# 网络协议原理
# 七层模型
七层模型,亦称OSI(Open System Interconnection)。参考模型是国际标准化组织(ISO)制定的一个用于计算机或通信系统间互联的标准体系,一般称为OSI参考模型或七层模型。
它是一个七层的、抽象的模型体,不仅包括一系列抽象的术语或概念,也包括具体的协议。
# TCP五层模型
在Linux系统上演示一下Http应用层协议
建立连接
# 进入当前进程下的文件描述符目录中 cd /proc/$$/fd # 文件重定向 将文件描述符8 输入输出指向设备目录tcp协议簇下的 与百度服务器建立连接 exec 8<> /dev/tcp/www.baidu.com/80
1
2
3
4传送数据(http协议:规范标准)
# echo打印数据再重定向到8号文件描述符(输入) echo -e 'GET / HTTP/1.0\n' >& 8 # 注意:&符号后边跟着文件描述符 意思是取文件描述符代表的文件
1
2
3查看返回的数据
cat <& 8
1演示截图
传输控制层:
查看指令
netstat -natp
1指令详解
netstat -natp -n: IP地址不要用逻辑名称显示 -a: 所有 -t:TCP -p:PID显示进程的ID号 Local Address 本地地址 Foreign Address 远程地址 State 状态 监听、连接、关闭等待 PID/Program name 进程号/进程名称
1
2
3
4
5
6
7
8
9该层特点
三次握手>数据传输>四次分手
成为一个最小粒度
不可被分割
拆包拆到端口,用端口识别进程
网络层:
查看指令
指令详解
route -n Gateway: 0.0.0.0:代表目标IP与该设备在同一个局域网内 192.168.8.2:代表目标IP不在一个局域网,需要下一跳
1
2
3
4该层特点
- 拆包获取目标IP地址,根据路由条目的掩码做按位与运算,获取下一跳
- 只拆到IP地址这个层次
链路层:
查看指令
激活网卡通告
该层特点
- 居于下一跳在原有数据包上包一层物理网卡信息
- 节点到节点之间的,每次跳转前,会撕毁物理网卡层,然后重新包上下一跳的物理网卡信息,最后跳转
组网演示图解: