408王道计算机网络强化——传输层和应用层(下)

简介: 408王道计算机网络强化——传输层和应用层

3.应用层

a7799ee6ff994917b848bb54f77f3bc9.png

3.1.DNS查询方式bf1dda9b912f47928ef5cd117c4aaf71.png

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

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

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

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

3.3.电子邮件a525f6fe78c646c9ba6904e56bff6f45.pngecc7f5a1f9d7486ea7834d7ad715b38c.png

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

2.POP3和IMAP为收邮件协议

3.基于TCP

3.4.HTTP

3.4.1.HTTP建立过程eabb9d5676b14fb6b255a23ea046421a.png

1.基于TCP

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

3.访问过程

①DNS

②ARP

③TCP建立(三次握手)

④HTTP

⑤TCP释放(四次握手)

3.4.2.HTTP连接方式3617b498a1de4b5eaeab95af51870372.png

3.4.3.HTTP报文结构 d845040a63244e2b8ee80c8a77191126.png123d00912fd149d2ab0a11fa91ed9a62.png

3.5.常用端口号

e1bb04c32ebe4ba6a91ad47ec1d7f448.png

FTP、SMTP、DNS、HTTP

4.真题712354a637ea4015815a4c4b0e60816b.png

(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个RTT9bbd315fd3f44d3c87db011e6d5c47bd.png

(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

ffcb05efc28048309074662b90d98b28.png

(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

92dbe4da566f4f3a889bb6dc70501d23.png

(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相减可得经过的路由器数541f1bccd5e04b2882265b971a2fa8f4.png

(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数据报首部发生变化,则首部校验和需要改变33af106e72e24a6686fa25426f8dd96f.png

(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

相关实践学习
容器服务Serverless版ACK Serverless 快速入门:在线魔方应用部署和监控
通过本实验,您将了解到容器服务Serverless版ACK Serverless 的基本产品能力,即可以实现快速部署一个在线魔方应用,并借助阿里云容器服务成熟的产品生态,实现在线应用的企业级监控,提升应用稳定性。
云原生实践公开课
课程大纲 开篇:如何学习并实践云原生技术 基础篇: 5 步上手 Kubernetes 进阶篇:生产环境下的 K8s 实践 相关的阿里云产品:容器服务 ACK 容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器化应用运行环境。 了解产品详情: https://www.aliyun.com/product/kubernetes
相关文章
|
19天前
|
缓存 网络协议 网络安全
计算机网络:应用层(上篇)
计算机网络:应用层(上篇)
|
19天前
|
网络协议 API
计算机网络:传输层——多路复用与解复用
计算机网络:传输层——多路复用与解复用
|
4天前
|
传感器 数据可视化 JavaScript
物联网架构:感知层、网络层和应用层
【5月更文挑战第30天】物联网(IoT)由感知层、网络层和应用层构成。感知层利用传感器(如DHT11)收集环境数据;网络层通过ESP8266等设备将数据传输至云端;应用层提供用户服务,如Node-RED实现数据可视化。示例代码展示了Arduino读取温湿度,ESP8266连接Wi-Fi及Node-RED数据可视化流程。物联网架构为数据处理与服务提供全面支持,预示其在各领域广阔的应用前景。
17 2
|
11天前
|
JSON 安全 网络协议
【Linux 网络】网络基础(二)(应用层协议:HTTP、HTTPS)-- 详解
【Linux 网络】网络基础(二)(应用层协议:HTTP、HTTPS)-- 详解
|
19天前
|
存储 缓存 网络协议
计算机网络 第三章 应用层(习题)
计算机网络 第三章 应用层(习题)
|
19天前
|
存储 消息中间件 设计模式
计算机网络——应用层(1)
计算机网络——应用层(1)
|
19天前
|
网络协议 安全 网络性能优化
|
19天前
|
缓存 网络协议 安全
计算机网络:传输层(TCP详解)
计算机网络:传输层(TCP详解)
|
13天前
|
消息中间件 Java Linux
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
2024年最全BATJ真题突击:Java基础+JVM+分布式高并发+网络编程+Linux(1),2024年最新意外的惊喜
|
11天前
|
存储 网络协议 Unix
【Linux 网络】网络编程套接字 -- 详解
【Linux 网络】网络编程套接字 -- 详解