蜂窝网络的链路层协议有哪些?
有几种用于高速蜂窝网络的平台。从 GSM,到 GPRS、W-CDMA、HSPA、LTE 等。我(大部分)从我在研究生院学习的内容(BPSK、QPSK、MIMO、衰落等)了解无线电传输的物理细节,并且IP 及以上的软件详细信息。但我不知道,我似乎无法找到有关蜂窝网络中特定数据链路协议的信息。(代替以太网、802.11 等)
我特别想知道是否以及如何在链路层管理由于衰落和其他工件造成的数据包丢失,或者他们是否根本不关心并让传输层关心这一点。
我问这个是因为我想评估我是否可以设法在传输层 (UDP) 上采取一些针对数据包丢失的对策,专门针对蜂窝网络量身定制。
我的问题是:蜂窝网络的数据链路协议是什么?这只是解决更大问题的起点,超出了这个特定问题的范围。
看一些日文文档,好像有一些协议,比如W-CDMA的DPCCH/DPDCH,但是坦白说,这方面的资料非常稀少(现在连维基百科页面都是孤儿)。有没有好的入门资源?
请注意,我是本网站的完全新手。如果这个问题措辞错误、不合适或有问题,请见谅。我想学习并成为这个社区的好成员,所以如果你考虑关闭或拒绝这个问题,请考虑给我建设性的批评。我很会接受批评,不会浪费你的时间。
我有一个互联网连接的 Ubuntu 服务器,通过以太网连接到住宅 ADSL 线路。大多数情况下,这是足够的,但我不能依赖 ADSL 链接像我希望的那样可靠。墨菲定律已经规定,停机时间在最不方便的时候到来。
我想使用“即用即付”的 3G USB 加密狗来提供故障转移。我缺乏有关适用于其他人的示例配置的信息 - 以及最适合我的(廉价)硬件的信息。目的是,当我的 ADSL 线路断开时,服务器检测到这一点并拨打 3G 服务 - 监控 ADSL 线路并在连接恢复时无缝切换回。
我关心的主要服务是 OpenVPN 隧道 - 通过 UDP 到远程服务器。另一个有用的服务是 Squid - 所以当 ADSL 断开连接时,我仍然可以从我的 LAN 访问网络。
问题:
我已经设置了几个 100 个嵌入式盒子,通过打开反向 ssh 隧道来联系总部,每个盒子都在一个新端口下。这基本上工作正常,但今天我遇到了通过低带宽(或低质量?)GPRS 连接使用隧道的问题。
打开隧道的远程机器通过(目前未知的)3G 路由器连接到互联网,该路由器可能只有 GPRS,最多是 EDGE 连接。
登录到我的计算机,我可以看到ssh
端口 1234 上的传入连接:
me@machine:~$ sudo nmap -sS -p 1234 --open localhost
Starting Nmap 5.21 ( http://nmap.org ) at 2014-11-27 15:27 CET
Nmap scan report for localhost (127.0.0.1)
Host is up (0.000070s latency).
Hostname localhost resolves to 2 IPs. Only scanned 127.0.0.1
PORT STATE SERVICE
1234/tcp open unknown
Nmap done: 1 IP address (1 host up) scanned in 0.09 seconds
me@machine:~$
Run Code Online (Sandbox Code Playgroud)
现在,尝试打开 ssh 连接时出现错误Connection timed out
: …
这个问题分为两部分。
一季度。
手机如何通过3G获取IP地址?比如,它会在很短的时间内(例如 1 天等)获得相同的 IP 吗?因为我的手机经常进出建筑物和地下停车场,我在手机热点/接收塔之间跳跃,所以我每次都会获得新 IP 吗?我觉得这又回到了过去的现代 -> 每次我“打电话/跳到互联网”时,我都会得到一个新号码。
或者它是否有一些 mac 地址,并且电信公司的手机 DHCP 服务器在特定的时间段内不断重复使用基于 mac 的最后一个 IP(例如,IP 的 TTL,就像普通的 DHCP 一样,它具有分配的到期设置知识产权)。
Q2。
如果之前的答案是移动设备不断获得不同的 IP,这是否会影响 Google 分析和唯一身份访问者的价值?因此,如果我一天在我的手机上获得 5 个 IP,这是否意味着我是我正在跟踪的网站的 5 个唯一访问者?
只是想知道是否可以像公共 wifi 网络一样嗅探 3G 网络,例如通过 wireshark(我几乎可以肯定这是不可能的,因为加密,但我只是想确定一下?)
我是一名 SQL Server 数据库管理员和开发人员,我也有多年的应用程序开发经验。我目前有一个客户有一个非常大的项目,他正在向我寻求指导。
客户已开始使用 Microsoft Access 开发系统的客户端,并表示这部分已接近完成。我问为什么要使用 MS Access 并被告知当时的负责人知道 MS Access 并认为它易于使用且功能强大足以完成这项工作,因为它仅在客户端上并且已经用模拟数据进行了测试(我假设虚拟数据的数量非常有限,并且没有真正的压力/负载测试,而是简单的客户端逻辑按需要运行)。
但现在客户需要方向并转向我。他们似乎认为谜题的其余部分很简单,而且都在“数据库”方面。他们意识到客户端应用程序和数据库之间需要有服务器和通信,但不知道实际需要做什么或如何做。
我知道如何开发应用程序,尤其是客户端服务器应用程序。我知道如何设计和构建数据库以及所有服务器端流程和业务逻辑功能。但我不确定在这种特定情况下客户到底需要什么。
客户要求该系统通过 3G 蜂窝无线连接在客户端和服务器之间进行通信。
系统需要具有可扩展性,因为会有大量交易,尽管交易可以“分批”进行。
将有多个位置,每个位置将有 2000 - 5000 个用户。
每个用户大约每十分钟将自动与服务器通信。
每个用户与服务器的通信将传递大约 60 个事务。(5000 个用户每 10 分钟传递 60 个事务 = 每十分钟 300,000 个事务[或每分钟 30k 个事务;每秒 500 个事务])
我对这个小组的问题是:
对于这样一个可随着交易数量增加和位置数量增加而扩展的高交易系统,最佳设计是什么?
客户端应用程序的最佳开发语言是什么?(MS Access 能用吗??)
我知道 Microsoft SQL Server 足够强大,可以处理工作负载,尤其是多服务器和数据分区等。而且我很确定 MySQL 也可以工作。但是这两个数据库中的任何一个是最佳选择吗(请用明确的客观原因澄清您的答案,而不仅仅是个人喜好或意见)?
客户提到 GoDaddy 每月提供特定数量的多个 MySQL 数据库,但这不需要网站/应用程序吗?GoDaddy 不仅仅托管客户端服务器应用程序的数据库,是吗?
这样的系统能否通过服务器和多达 5000 个客户端之间的 3G 蜂窝无线连接以前面提到的交易金额正常运行?
您的想法和建议将不胜感激。
谢谢
3g ×6
cellular ×1
dhcp ×1
failover ×1
ip-address ×1
link-layer ×1
modem ×1
mysql ×1
networking ×1
packet ×1
sql-server ×1
ssh ×1
ssh-tunnel ×1