1. 计算机网络的两种体系结构
- tcp/ip体系结构:网络接口层- 网络层-运输船-应用层
- osi体系结构:物理层-数据链接层、网络层、运输层、会话层、表示层、应用层
- 原理体系结构:物理层-数据链路层-网络层-运输层-表示层
- 各个层传递信息,每次加一个协议头,接收设别层层解析
2. http
- 两个进程的响应
- http超文本传输协议
- 请求响应过程:请求地址然后解析域名然后请求ip地址,客户端接收到请求报文,返回响应
- 持久性连接和非持久连接,http是非持久连接
- http请求特点:简单、灵活和易于扩展、应用广泛和跨平台
- http报文:请求头(通用首部、请求首部、响应首部、请求行、响应行)、消息正文
3. tcp/udp
- 端口与端口的通信
- tcp是面向连接的,可靠的,基于字节流的传输层通信协议
- tcp报文端结构:
tcp三次握手和四次挥手
位码即tcp标志位,有6种标示: SYN(synchronous建立联机) ACK(acknowledgement 确认) PSH(push传送) FIN(finish结束) RST(reset重置) URG(urgent紧急) Sequence number(顺序号码) Acknowledge number(确认号码)
-
第一次握手:主机A发送位码为syn=1,随机产生seq number=1234567的数据包到服务器,主机B由SYN=1知道,A要求建立联机; -
第二次握手:主机B收到请求后要确认联机信息,向A发送ack number=(主机A的seq+1),syn=1,ack=1,随机产生seq=7654321的包; -
第三次握手:主机A收到后检查ack number是否正确,即第一次发送的seq number+1,以及位码ack是否为1,若正确,主机A会再发送ack number=(主机B的seq+1),ack=1,主机B收到后确认seq值与ack=1则连接建立成功。
【问题1】为什么连接的时候是三次握手,关闭的时候却是四次握手?
答:因为当Server端收到Client端的SYN连接请求报文后,可以直接发送SYN+ACK报文。其中ACK报文是用来应答的,SYN报文是用来同步的。但是关闭连接时,当Server端收到FIN报文时,很可能并不会立即关闭SOCKET,所以只能先回复一个ACK报文,告诉Client端,“你发的FIN报文我收到了”。只有等到我Server端所有的报文都发送完了,我才能发送FIN报文,因此不能一起发送。故需要四步握手。
【问题2】为什么TIME_WAIT状态需要经过2MSL(最大报文段生存时间)才能返回到CLOSE状态?
答:虽然按道理,四个报文都发送完毕,我们可以直接进入CLOSE状态了,但是我们必须假象网络是不可靠的,有可以最后一个ACK丢失。所以TIME_WAIT状态就是用来重发可能丢失的ACK报文。
tcp可靠传输
- 重传机制:序列号和确认应答,如果没有则表示需要重传、超时重传
- 滑动窗口:
- 流量控制:接收方控制发送流量
- 拥塞控制:拥堵窗口,cwrd变大,发现拥堵,cwrd减小
4.ip
- 主机与主机的通信
- ip的地址的分类
IP地址根据网络号和主机号来分,分为A、B、C三类及特殊地址D、E。 全0和全1的都保留不用。
A类:(1.0.0.0-126.0.0.0)(默认子网掩码:255.0.0.0或 0xFF000000)第一个字节为网络号,后三个字节为主机号。该类IP地址的最前面为“0”,所以地址的网络号取值于1~126之间。一般用于大型网络。
B类:(128.0.0.0-191.255.0.0)(默认子网掩码:255.255.0.0或0xFFFF0000)前两个字节为网络号,后两个字节为主机号。该类IP地址的最前面为“10”,所以地址的网络号取值于128~191之间。一般用于中等规模网络。
C类:(192.0.0.0-223.255.255.0)(子网掩码:255.255.255.0或 0xFFFFFF00)前三个字节为网络号,最后一个字节为主机号。该类IP地址的最前面为“110”,所以地址的网络号取值于192~223之间。一般用于小型网络。
D类:是多播地址。该类IP地址的最前面为“1110”,所以地址的网络号取值于224~239之间。一般用于多路广播用户[1] 。
E类:是保留地址。该类IP地址的最前面为“1111”,所以地址的网络号取值于240~255之间。
无分类地址CIDR
CIDR概述
CIDR是无类别域间路由 CIDR取消了IP地址的分类限制,可以取IP地址的任意前缀作为网络号 CIDR改善了IP地址的分配方式,缓解了IP地址危机 CIDR可以利用层次网络和路由汇总减小路由器中路由表的规模,提高转发速度
CIDR地址说明 CIDR地址的网络地址由前缀或掩码决定
128.14.32.5/20表示该IP地址前20位为网络号,后12位为主机号,即掩码为255.255.240.0 CIDR地址的网络地址和广播地址本质不变 主机号全0为网络地址,全1为广播地址 128.14.32.0/32表示一个网络地址,即一个CIDR地址块
ip地址和路由控制
ip分片和重组
ip协议相关的技术之DNS(域名解析)、ARP(地址解析协议ip-mac)、DHCP(动态主机配置协议)、NAT(地址转换协议)
5.数据链路层
- 加上帧头和帧尾
- mac地址全球唯一
- mac地址之间的通信
- ARP(地址解析协议ip-mac)
6.计算机网络综合
输入网址后网络发生啦什么
- http-tcp-ip-mac层层封装传递找到目标mac地址
- 目标mac地址层层解析后接收到并发送响应报文
详细过程
|