计算机网络
常见单位换算
- B表示Byte,字节;b表示bit,比特。1Byte=8bit
- 速率单位换算
速率指的是数据的传送速率,也称数据率或比特率,单位是bit/s,bit/s,b/s,bps : 这几个是等价的,表示传输速率,比特每秒
当速率较高时,就在前面加字母:
k ( 1 0 3 ) , M ( 1 0 6 ) , G ( 1 0 9 ) , T ( 1 0 12 ) , P ( 1 0 15 ) , E ( 1 0 18 ) , Z ( 1 0 21 ) , Y ( 1 0 24 ) \tiny{k(10^3) ,M(10^6) ,G(10^9) , T(10^{12}) ,P(10^{15}) ,E(10^{18}) , Z(10^{21}) , Y(10^{24})} k(103),M(106),G(109),T(1012),P(1015),E(1018),Z(1021),Y(1024)
比如说: 9 M b p s = 9 × 1 0 6 b p s 9Mbps = 9×10^{6}bps 9Mbps=9×106bps
1Gbit/s = 1 0 6 10^{6} 106kb/s = 1 0 3 10^{3} 103Mb/s = 1 0 9 10^{9} 109b/s - 字节与比特之间单位换算
byte(B):字节,1B = 8bit,同理bytes也是复数形式
在二进制中:
K ( 2 10 ) , M ( 2 20 ) , G ( 2 30 ) , T ( 2 40 ) , P ( 2 50 ) , E ( 2 60 ) , Z ( 2 70 ) , Y ( 2 80 ) \tiny{K(2^{10}),M(2^{20}),G(2^{30}),T(2^{40}),P(2^{50}),E(2^{60}),Z(2^{70}),Y(2^{80})} K(210),M(220),G(230),T(240),P(250),E(260),Z(270),Y(280)
1 K B = 1024 B y t e , 1 M B = 1024 K B , 1 G B = 1024 M B 1 KB = 1024Byte,1 MB = 1024KB,1GB = 1024MB 1KB=1024Byte,1MB=1024KB,1GB=1024MB
OSI七层参考模型,TCP/IP五层模型
TCP中的拥塞控制
路由聚合
IP地址斜线表示法
例如,您想以斜线记法写入子网掩码为 255.255.255.0 的 IP 地址 192.168.42.23。
将子网掩码转换为二进制。
在此示例中,255.255.255.0 的二进制表示方法为:
11111111.11111111.11111111.00000000。
统计子网掩码中“1” 的数目。
此示例中包含二十四 (24) 个数字“1”。
写入原始 IP 地址、斜线 (/) 以及步骤 2 中得到的数字。
结果为 192.168.42.23/24。
假设下面有4个网络:
172.18.129.0/24
172.18.130.0/24
172.18.132.0/24
172.18.133.0/24
如果这四个进行路由汇聚,能覆盖这四个网络的汇总地址是:172.18.128.0/21
算法思路是,首先从左到右开始,把不同的那个ip数字换算成二进制,即
129 二进制 1000 0001
130 二进制 1000 0010
132 二进制 1000 0100
133 二进制 1000 0101
这四个数的前五位相同都是10000,所以加上前面的172.18这两部分相同的位数,网络号就是8+8+5=21。把共同的保留下来,其他全部为0,就是路由汇聚的地址。10000000转换回十进制就是128。所以,路由汇聚的ip地址就是172.18.128.0,最终就是172.18.128.0/21。
数据报的分片
MTU(Maximum Transmission Unit)是指一个特定的网络所允许的物理帧的最大数据量,当路由器收到一个大于其要转发的网络的MTU的数据报时,路由器必须将这个数据报分成可通过该网络的数据报片,每一片仍采用数据报的格式,且保留原数
偏移就是某片在原分组的相对位置,以8个字节为偏移单位.这就是说,每个分片的长度一定是8字节(64位)的整数倍. 一共要传输3800字节,每次最大只能传1400字节(因为还要加上ip固定头部字节的20字节,加起来就是1420字节),所以只需传3次,即1400+1400+1000(一共3800字节)即可. 这样第一次传时,片偏移为0.第二次传时,片偏移为1400/8=175.第三次传时,片偏移为2800/8=350.
标识告知接收端,是不是同一个数据报的分片。DF=0表示可以分片,MF = 1表示后面还有分片。片偏移表示这个分片在原来的IP数据报中的位置。
分片以后,每一片都需要加20byte的IP头部,因为需要IP头部地址信息帮助寻址选路
例:数据报长4000字节经网络传送,该网络传送最大长度1500字节,求划分几个数据报片,各数据
报片的字段长度、片偏移量和MF标志。
MTU=1500B,去除IP头部=1480B,片偏移量=1480/8=185,3980,2960
* | 总长度(字节) | 数据部分长度(字节) | MF | 片偏移量 |
---|---|---|---|---|
1 | 1500 | 1480 | 1 | 0 |
2 | 1500 | 1480 | 1 | 185 |
3 | 1040 | 1020 | 0 | 370 |
差错控制方法
- 前方纠错:在接收端检测到接收码元差错后,通过一定的运算,确定差错的具体位置,并自动加以纠正。
- 自动请求重发:也称“循环自动请求”,ARQ(Automatic Repeatre Quest)协议是指在接收站接收到一个包含出错数据的信息(帧)时,自动发出一个重传错帧的请
- 混合差错控制:上述两种方式的综合,但传输设备相对复杂。
- 循环冗余校验法(CRC):见下文
- 奇偶校验法:这种方法是在每一字节中加上一个奇偶校验位,并被传输,即每个字节发送九位数据
IP地址
- 每一个字节都为0的地址(“0.0.0.0”)对应于当前主机;
- IP地址中的每一个字节都为1的IP地址(“255.255.255.255”)是当前子网的广播地址;
- IP地址中凡是以“11110”开头的E类IP地址都保留用于将来和实验使用。
- IP地址中不能以十进制“127”作为开头,该类地址中数字127.0.0.1到127.255.255.255用于回路测试,如:127.0.0.1可以代表本机IP地址,用“http://127.0.0.1”就可以测试本机中配置的Web服务器。
- 网络ID的第一个6位组也不能全置为“0”,全“0”表示本地网络。
- A类地址范围:0.0.0.0—126.255.255.255
二进制表示:0.0.0.0–01111110.11111111.11111111.11111111
默认网络掩码为:255.0.0.0 - B类地址范围:128.0.0.0—191.255.255.255
二进制表示:10000000.0.0.0–10111111.11111111.11111111.11111111
默认网络掩码为:255.255.0.0 - C类地址范围:192.0.0.0—223.255.255.255
二进制表示:11000000.0.0.0–11011111.11111111.11111111.11111111
默认网络掩码为:255.255.255.0
冲突域与广播域
-
冲突域是一种物理分段,指连接到同一导线上所有工作站的集合、同一物理网段上所有节点的集合或是以太网上竞争同一带宽节点的集合。
-
广播域是指可以接收到同样广播消息的节点的集合
数据链路层的滑动窗口协议
- 发送方维护一组连续的允许发送的帧的序号,称为发送窗口
- 接收方也维护着一组连续的允许接收的帧的序号,称为接收窗口
- 发送窗口用来对发送方进行流量控制,而发送方窗口大小Wt用来表示还没有收到对方确认信息的情况下发送方最多还可以发送多少个数据帧
- 接收端设置接收窗口是为了控制可以接收哪些数据帧而不可以接收哪些数据帧
- 在接收方只有当收到的数据帧的序号落入接收窗口内才允许将该数据帧收下,若不在,则丢弃之
- 在发送端,每收到一个确认帧,发送窗口就向前滑动一个帧的位置,当发送窗口内没有可以发送的帧(即窗口内的帧全部发送但未收到确认),发送方就会停止发送。直到收到接收方发来的确认帧才可以使发送窗口向右移动以使得可以发送新的数据帧
从滑动窗口的概念看,停止-等待协议、后退N帧协议和选择重传协议只在发送窗口大小上有所差异
- 停止-等待协议
发送窗口大小 = 1,接收窗口大小 = 1 (接收窗口 = 1,可以保证帧的有序接收)- 后退N帧协议
发送窗口大小 > 1,接收窗口 = 1(接收窗口 = 1,可以保证帧的有序接收)- 选择重传协议
发送窗口 > 1,接收窗口 > 1
注意:对某一个数据帧的确认,表明该数据帧和这以前所有的数据帧均已正确无误的接收到了。
最后:在数据链路层的滑动窗口协议中,窗口的大小在传输过程中是固定的(与传输层的窗口有区别)
CRC 循环冗余码的计算
- 计算冗余位的位数,即生成多项式的最高阶数
- 在信息位后补冗余位个数的0
- 结果与生成多项式相除,这里采用的除法叫做模2除法。
- 到余数将信息为后面补的0换成余数
- 例:数据101110 多项式 P ( x ) = x 3 + 1 P(x)=x^3+1 P(x)=x3+1,求冗余码
- 3位
- 101110000
- 多项式 P ( x ) = x 3 + 1 → 1001 P(x)=x^3+1\rightarrow1001 P(x)=x3+1→1001,101110000 模2相除1001得余数11
- 冗余码011,101110011
路由表更新遵循规则
- 路由表项在源路由表项中不存在添加
- 与路由表来源端口相同,无条件更新
- 来源端口不同,度量值小,更新