目录
1.传输层和应用层概述
2.传输层
编辑
2.1.UDP的首部格式
2.2.TCP的首部格式
2.3.TCP的连接建立
2.4.TCP的连接释放
2.5.慢开始和拥塞部分、快重传和快恢复
3.应用层
3.1.DNS查询方式
3.2.FTP编辑
3.3.电子邮件
3.4.HTTP
3.4.1.HTTP建立过程
3.4.2.HTTP连接方式
3.4.3.HTTP报文结构
3.5.常用端口号
4.真题
UDP首部固定是8B,因此不需要有首部长度的字段
ACK:确认连接后ACK = 1
SYN:第一次握手和第二次握手为1
FIN:
检验和:检验首部和数据部分(整个报文段)
1.头握手两次不携带数据,且SYN = 1,第三次可以携带也可以不携带数据,且不再携带SYN
2.ACK = 1表示针对上一个对方发送数据的确认,从第二次握手开始都置为1,第一次并没有收到数据,因此不需要确认,之后的每一次都会收到对方的数据,因此置为1
3.两边的seq无关,是乙方数据的序号,ack和对方的seq有关
4.ack是针对对方发送数据序号的确认,x + 1表示期待收到对方发送序号x + 1的数据
5.第二次握手服务器分配缓存和变量,第三次握手客户端分配缓存和变量
1.第一次握手:不会携带数据,专门用于通知对方要断开连接,即FIN = 1;ACK = 1,仍处于连接建立阶段;客户端侧关闭连接
2.第二次握手:表示对第一次握手的确认ACK = 1;不管带不带数据,都会消耗一个序号,因此,ack也要相应 + 1
3.第三次握手:发送剩余数据;第二次握手可能携带数据,因此seq可能会比第二次握手增加很多;ACK = 1;ack同第二次握手,因为第二次握手和第三次握手间客户并没有发送数据;FIN = 1,主动断开连接,服务器侧断开连接
4.第四次握手:ACK = 1表示收到第三次握手;seq为第一次握手 + 1;ack表示期待收到服务器的下一个数据号(虽然收不到了);不会立即关闭连接
5.FIN只有在第一次握手和第三次握手出现,且为1
6.ACK连接建立后都需要置为1,即除连接建立的第一次握手外,所有数据都要置为1
1.发送窗口 = min{拥塞窗口,接收窗口}:可能出现接收窗口在不断减小(接收窗口由一组数据缓存区组成,可能接收数据后放入该缓存区中并不往上交付,则就会一直占用该缓存区,进而接收窗口越来越小),而拥塞窗口不变或者变大
2.拥塞窗口初始值为1表示的是1个报文段
3.TCP 采用累积确认:接收方按序接受,如果没能按序收到某一帧,则一直返回该帧的ack
4.发送方在收到接收方返回的确认后,拥塞窗口+1:拥塞窗口取决于收到确认段的个数
①1RTT:cwnd = 1(初始时为1);发1个;确认1个
②2RTT:cwnd = 1 + 1 = 2(收到1RTT的确认时 + 1);发2个(在1个RTT内几乎同时发送);确认2个(在1个RTT内几乎同时收到)
③3RTT:cwnd = 2 + 2 = 4(收到两个确认,即+ 1 + 1);发4个;确认4个
④4RTT:cwnd = 4 + 4 = 8;发8个;确认8个
⑤5RTT:cnwd = 8 + 8 = 16;发16个;确认16个
⑥6RTT:cnwd = 16 + 1 = 17(到达门限值,指数增加改为线性增加,5RTT发完后改变,即5RTT结束后,6RTT开始前);发17个,确认17个
(1)理想情况下,每收到一个确认,下一个RTT的cwnd + 1
(2)在cnwd = 24时,发送方发送了24个,但是只收到了接收方返回的20个(可以是其他任意小于24的个数),即判定发生拥塞,更改cwnd为1
5.接收窗口和TCP建立结合:
①1RTT:第一次握手和第二次握手
②2RTT:第三次握手并且携带数据,从此时开始计算
②以1KB的最大段长发送TCP段:MSS = 1KB
③拥塞窗口 = 16KB发生超时,随即拥塞窗口变为1,改变是即时的,不需要等待一个RTT;门限值变为超时拥塞窗口的一半,即8;
④1(未到达门限值,指数增大)→2→4→8(到达门限值,线性增大)→9→C
该题没有强调接收缓存,故视为接收方每次收到数据后直接向上交付
①发送窗口 = min{拥塞窗口,接收窗口},故拥塞窗口增长到10之前,发送窗口随拥塞窗口的改变而改变;拥塞窗口增长到10+时,发送窗口受到接收窗口的限制一直为10
②若设接收窗口大小足够,则10个RTT后,发送窗口大小为12
①4个RTT内,总共发送的数据为1 + 2 + 4 + 8 = 15KB
②接受的数据全部存入缓存,不被取走:4RTT时,接受窗口大小为16 - 15 = 1KB
③发送窗口 = min{拥塞窗口,接收窗口} = 1
408计算机网络学习笔记——应用层_江南江南江南丶的博客-CSDN博客_计算机网络应用层笔记
差别主要在于是本地域名服务器自己查询,还是根域名服务器、顶级域名服务器和权限域名服务器帮它查询
①需要可靠连接,故继续TCP(邮件相关协议也是TCP)
②TCP控制连接端口号21,TCP数据连接端口号20,它们俩可以同时存在,故需要通过端口区分
1.邮件服务器是中间人,既可以为发件人发送邮件,也可以为收件人读取邮件;每个邮件服务器既可以作为发送方邮件服务器,也可以作为接收方邮件服务器
2.POP3和IMAP为收邮件协议
3.基于TCP
1.基于TCP
2.发送HTTP请求报文之前,就必须建立TCP连接
3.访问过程
①DNS
②ARP
③TCP建立(三次握手)
④HTTP
⑤TCP释放(四次握手)
FTP、SMTP、DNS、HTTP
(1)①SYN = 1:SYN在第一次握手和第二次握手时为1
②ACK = 1:除第一次握手外的所有TCP报文段的ACK都为1
③ack = 101:H3第一次握手时的序号为100,表示下一次期望收到H3序号101的数据
(2)①假定TCP连接建立完成后:即不需要考虑TCP建立连接的三次握手
②S为新建的TCP连接分配了20KB的接收缓存:接收窗口初始值为20
③TCP接收缓存仅有数据存入而无数据取出:接收方收到数据后不向上交付,一直占用接收窗口
④H3收到的第8个确认段所通告的接收窗口:每个确认段表示发送方发送1个数据,并且接收方正确接受该数据,同时接收窗口 - 1;收到8个表示接收缓存中正确收到了8个数据,即接收窗口 = 20 - 8 = 12
⑤H3的拥塞窗口:拥塞窗口初始值为1;发送方每收到一个确认段,拥塞窗口 + 1,即拥塞窗口的增加取决于收到了多少个确认;拥塞窗口 = 1 + 8 = 9
⑥H3的发送窗口:发送窗口 = min{接收窗口,拥塞窗口} = 9
(3)①H3发送窗口 = 0:表示接收缓存被占满,接收窗口 = 0→收到20KB的数据
②序号以B为单位:20KB的数据消耗20 * 1024个序号
③20 * 1024 + 100(第一次握手的序号)+ 1(下一个数据序号)
④平均数据传输速率:共需要5个RTT传输20KB
A.1RTT = 1KB;总1KB
B.2RTT = 2KB;总1 + 2 = 3KB
C.RTT = 4KB;总3 + 4 = 7KB
D.4RTT = 8KB;总7 + 8 = 15KB
E.5RTT = 5KB;总15 + 5 = 20KB
20KB / 5RTT * 200ms
(4)第二次握手和第三次握手在没有数据需要发送时,可以几乎并行,延迟极小,故计算时候可以省略(但四次握手必须走完,即都必须存在);第一次握手 + 第二次握手 + 第四次握手,每次握手0.5个RTT,共1.5个RTT
(1)①最大范围:子网为111.123.15.0/24,其中已经分配了111.123.15.1(0000 0001),111.123.15.2(0000 0010),111.123.15.3(0000 0011),111.123.15.4(0000 0100);再加上111.123.15.255(1111 1111)作为广播地址不能分配,故最大范围为111.123.15.5(0000 0101) - 111.123.15.254(1111 1110)
②源IP地址为0.0.0.0;目的IP地址为255.255.255.255
(2)①ARP表为空,需要通过广播ARP请求分组获得默认路由的地址,目的地址即为广播地址,FF-FF-FF-FF-FF-FF
②访问INTERNET需要经过默认路由的帮助,故目的地址为路由器的MAC地址,即00-a1-a1-a1-a1-a1
(3)①主机1和WWW服务器在同一网段内,能够访问需要在同一网络内,即网络号需要相同,而子网号为前24位,两者都是111.123.15,网络号相同,故主机1可以访问WWW服务器
②主机1和INTERNET不在同一网段内,需要借助默认网关的帮助下进行访问,即正确配置默认网关地址:主机1设置的默认网关地址为DHCP服务器的IP地址,而DHCP服务器并不是主机1的默认路由,故主机1无法访问INTERNET
(1)①由H发送,即IP数据报的源地址为H的IP地址(192.168.0.8转化为16进制为c8 a8 00 08)
②TCP连接的建立过程需要三次握手:通过SYN = 1找到前两次握手,通过发送方的seq找到第三次握手(第一次握手的seq + 1)
③MAC帧在以太网上传输过程中,最小帧长为64B,其中包括MAC头部和尾部18B和MAC数据部分;而MAC数据部分就是IP数据报的总长度,由IP首部、TCP首部和应用层数据构成;查看IP数据报的总长度字段的大小,其大小即是IP数据报的长度
(2)①123分别为建立TCP连接三次握手的过程,12不携带数据,3携带数据
③3的seq = 84 6b 41 c6,根据源IP地址和目的IP地址可知,4为H发送给S的数据,不考虑;5为S发送给H的数据,ack = 84 6b 41 d6,表示期望收到该帧,即正确收到了 c6 - d5
(3)①属于同一分组的不同分片标识位一样,5和该分组的标识位都为68 11,故属于同一分组
②每经过一个路由器TTL - 1,故两者的TTL相减可得经过的路由器数
(1)①找到源IP地址在前80B的位置,之后的4B就是目的地址(寻找有前后关系的部分) / 从MAC帧14B控制信息后,开始一个一个帧对应寻找目的地址
②该主机的默认路由是路由器R,其MAC地址为00-21-27-21-51-ee
(2)①通过ARP协议
②ARP请求报文是以广播形式发送,故目的地址为FF-FF-FF-FF-FF-FF
(3)①非流水线:每收到一个响应才会发送请求
②1RTT:获得页面;5RTT:5个图像;故需要6个RTT
(4)①经过路由器,则TTL - 1
②主机为私有地址,故需要转换源IP地址为公有IP地址
③IP数据报首部发生变化,则首部校验和需要改变
(1)需要配置NAT转换表
外网:IP地址为203.10.2.2/30,端口号为80(HTTP)
内网:IP地址为192.168.1.2,端口号为80(HTTP)
(2)①源地址(H2自己的内网IP地址):192.168.1.2
目的地址(WEB的外网地址,即WEB默认路由R2的IP地址):203.10.2.2
②源地址(R3将H2的内网IP地址转换为自己的公网地址):203.10.2.6
目的地址(不变):203.10.2.2
③源地址(不变):203.10.2.6
目的地址(WEB的内网地址):192.168.1.2