2023-05-24 16:33:07
逻辑层通信的实现基础。TCP/IP实现了这个全球寻址方案。IP地址分为IPV4和IPV6两种,后者是前者的升级版本,目前前者在主要使用。
IPV4地址有\(2^{32}\)个,因为它的长度是32位,也就是四个字节。下面主要讨论的是IPV4。
这种方法将地址空间分为ABCDE这5类。ip地址开头4位就能确定地址的类。
前4位 | 第一个字节 |
---|---|
0000 | 0-127 |
1000 | 128-191 |
1100 | 192-223 |
1110 | 224-239 |
1111 | 240-255 |
这三个是传输层的协议。UDP较为简单,其次是复杂的TCP协议。最后的SCTP仅了解。
传输层负责的是进程到进程的传递。
在web2最常用的就是C/S模式。为了传输时的标识,需要确定本地/远程的主机和进程。
寻址:传输层需要端口号来标识进程ID,服务器和客户端都是如此。不过前者规定比较严格,后者可以随机选择一个。这一般是由IANA统一管理的。
套接字地址:将IP和端口号结合起来就得到了套接字地址(socket address)。传输层协议需要客户套接字地址和服务器套接字地址。这四条信息是IP头部和传输层协议头部的组成部分。IP头包含IP地址,UDP/TCP头包含端口号。
寻址机制可以通过传输层进行复用和分离。也就是,同时刻选择一个待发送的分组进行发送(复用),同时刻选择一个待接受的进程分发分组。
前者对应UDP,分组从一方发送给另一方,不需要建立/释放连接,分组无编号。它们没有确认过程,可能被延迟、丢失、无序到达
\(64\times1024\times8(bit)\div(20\times10^3)s=26.21Mbit/s\)
30s内不能有重复序号,因此30s最多有\(2^8=256\)个段。因此结果是\(1024bits\times256segments\div30s=8738bit/s\)
它和服务质量是正相关的。
思想是,利用窗口控制拥塞。窗口有两个,接受/发送窗口
策略有如下几个:
一般,拥塞控制综合这两种启动方式。开始时慢启动,之后达到一个阈值后开始加性增加,并按照丢包严重程度来重新确定阈值。阈值的确定是取下一次计算得的发送速率和接受到对面ACK时得到的对方缓存空间的最小值。
它允许每个端口有多个IP地址。协议构成方面,了解即可。