目录

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.真题


1.传输层和应用层概述

 

2.传输层

2.1.UDP的首部格式

UDP首部固定是8B,因此不需要有首部长度的字段

2.2.TCP的首部格式

ACK:确认连接后ACK = 1

SYN:第一次握手和第二次握手为1

FIN:

检验和:检验首部和数据部分(整个报文段)

2.3.TCP的连接建立

1.头握手两次不携带数据,且SYN = 1,第三次可以携带也可以不携带数据,且不再携带SYN

2.ACK = 1表示针对上一个对方发送数据的确认,从第二次握手开始都置为1,第一次并没有收到数据,因此不需要确认,之后的每一次都会收到对方的数据,因此置为1

3.两边的seq无关,是乙方数据的序号,ack和对方的seq有关

4.ack是针对对方发送数据序号的确认,x + 1表示期待收到对方发送序号x + 1的数据

5.第二次握手服务器分配缓存和变量,第三次握手客户端分配缓存和变量

2.4.TCP的连接释放

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

2.5.慢开始和拥塞部分、快重传和快恢复

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

3.应用层

3.1.DNS查询方式

408计算机网络学习笔记——应用层_江南江南江南丶的博客-CSDN博客_计算机网络应用层笔记

差别主要在于是本地域名服务器自己查询,还是根域名服务器、顶级域名服务器和权限域名服务器帮它查询

3.2.FTP

①需要可靠连接,故继续TCP(邮件相关协议也是TCP)

②TCP控制连接端口号21,TCP数据连接端口号20,它们俩可以同时存在,故需要通过端口区分

3.3.电子邮件

 1.邮件服务器是中间人,既可以为发件人发送邮件,也可以为收件人读取邮件;每个邮件服务器既可以作为发送方邮件服务器,也可以作为接收方邮件服务器

2.POP3和IMAP为收邮件协议

3.基于TCP

3.4.HTTP

3.4.1.HTTP建立过程

1.基于TCP

2.发送HTTP请求报文之前,就必须建立TCP连接

3.访问过程

①DNS

②ARP

③TCP建立(三次握手)

④HTTP

⑤TCP释放(四次握手)

3.4.2.HTTP连接方式

3.4.3.HTTP报文结构

3.5.常用端口号

FTP、SMTP、DNS、HTTP

4.真题

(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

408王道计算机网络强化——传输层和应用层相关推荐

  1. 计算机网络之传输层笔记

    传输层 前提 参考书:谢希仁<计算机网络(第7版)>.王道计网课程.天勤计网课程等. 1 传输层概述 1.1 传输层简介 (1)传输层为应用层提供通信服务,使用网络层的服务. (2)传输层 ...

  2. 【计算机网络】传输层 : 总结 ( TCP / UDP 协议 | 寻址与端口 | UDP 协议 | TCP 协议特点 | TCP 连接释放 | TCP 流量控制 | TCP 拥塞控制 ) ★★★

    文章目录 一.传输层 TCP / UDP 协议 ★ 二.寻址端口号 ★ 三.UDP 协议特点 四.UDP 协议首部格式 五.UDP 校验 六.TCP 协议 特点 ★ 七.TCP 报文段首部格式 八.T ...

  3. 【计算机网络】传输层 : TCP 连接管理 ( TCP 连接建立 | 三次握手 | TCP 连接释放 | 四次挥手 )

    文章目录 一.TCP 连接管理 二.TCP 连接建立 三.TCP 连接建立 相关报文段 字段 四.SYN 洪泛攻击 五.TCP 连接释放 一.TCP 连接管理 TCP 传输数据过程 : 建立连接 -& ...

  4. 计算机网络传输层课件,计算机网络技术,传输层协议课件

    计算机网络技术,传输层协议课件 lufei1108@ 阿迪达斯三条纹标志是由阿迪达斯的创办人阿迪·达斯勒设计的,三条纹的阿迪达斯标志代表山区,指出实现挑战.成就未来和不断达成目标的愿望. 第4章 传输 ...

  5. 【计算机网络】传输层(一)—— 传输层概述

    [计算机网络]传输层(一)-- 传输层概述 一.传输层的功能 二.传输层的寻址与端口 (一).端口 (二).端口号 端口号的分类 (三).套接字 (四).UDP (五).TCP 一.传输层的功能 传输 ...

  6. 链路层、网络层、传输层、应用层长度

    1.概述 首先要看TCP/IP协议,涉及到四层:链路层,网络层,传输层,应用层. 以太网(Ethernet)的数据帧在链路层 IP包在网络层 TCP或UDP包在传输层 TCP或UDP中的数据(Data ...

  7. 计算机网络自顶向下 传输层 习题

    计算机网络自顶向下 传输层 习题 考虑在主机 A 和主机 B 之间有一条 TCP 连接.假设从主机 A 传送到主机 B 的 TCP 报文段具有源端口号 x 和目的端口号 y.对于从主机 B 传送到主机 ...

  8. 【学习笔记】【计算机网络【总】】物理层;链路层;网络层;传输层;应用层;详解

    目录 框架 一.计算机网络 1. 层次结构设计 2. 现代互联网拓扑 3. 网络性能指标 二.物理层 三.数据链路层 2.最大传输单元MTU 3.以太网协议详解 四.网络层 - 链接 五.传输层 - ...

  9. 计算机网络传输层和应用层作业,计算机网络传输层作业.doc

    第三章作业信工A班 林秋慧 1101000120 试比较TCP与UDP 协议 相同点 不同点 TCP(传输控制协议) 为运输层的两个协议,为运行在不同主机上的应用进程之间提供了逻辑通信功能. 基本任务 ...

最新文章

  1. OKR不但是目标管理工具,也是沟通工具
  2. ARM(IMX6U)ARM Cortex-A7中断系统(GPIO按键中断驱动蜂鸣器)
  3. 工程中选择数据结构和算法的依据
  4. 【Python】Paramiko模块在Windows10中import ssl报错的处理方法
  5. linux安装JDK环境,JDK6.0即java 1.6.0
  6. python中的axis=0和1代表什么
  7. A CAPTCHA Server Control for ASP.NET C# 版
  8. 【回血赠书第4期】9月新书不一般,你涨知识我买单
  9. 白话使用zookeeper作为注册中心搭建微服务
  10. Scrapy框架之传智项目整理
  11. springboot中汉字转拼音
  12. 计算机软件高级职称有啥用,计算机软考高级职称有什么用
  13. 数据仓库概念以及选型
  14. 10月12日 阅读数异常公告
  15. Mybatis核心配置文件
  16. linux 协议栈学习 第八节 链路层GRO的处理
  17. win10下面搜索框无法搜索应用的解决方案
  18. C语言编程规范之匈牙利命名法
  19. python元祖封包_转-python封包
  20. MySQL NOW() 是否包含夏令时

热门文章

  1. iphone原彩显示对眼睛好吗_iPhone x手机原彩显示烧屏怎么办呢
  2. 计算机软考高级好考吗?需要备考多久?
  3. 6.3.1.8 Packet Tracer - 探索网络互联设备-熟悉Packet Tracer模拟器
  4. 改变命运的早上三分钟 之 三
  5. Python 人员值班表
  6. ps笔记(从基础开始)
  7. html5游戏开发_HTML5游戏开发–第9课
  8. 2013渣打编程马拉松赛天津初赛总结
  9. Tushare财经数据接口(五)案例——优质基本面的股票池创建
  10. 2020年数学建模国赛C题完整代码下载链接处