计算机基础------TCP/IP模型
TCP/IP(Transmission Control Protocol/Internet Protocol,传输控制协议/网际协议)是指能够在多个不同网络间实现信息传输的协议簇。TCP/IP模型是建立在OSI七层模型之上的,TCP/IP模型始与实际的数据传输是一一对应的,目前官方认证的是TCP/IP的四层模型,但TCP/IP五层模型更贴近于数据的实际传输过程。
1、应用层
1.1、作用
为用户提供服务、操作界面;定义数据包的格式;加密、压缩数据包;确认文件的传递方式。
1.2、常见的网络协议
应用层的相关协议都是根据其作用进行划分的,每个协议在传输数据的过程中都有自己专属的端口,即数据的传输通道。
FTP(File Transfer Protocol):文件传输协议
作用:传输网络文件
端口号:20、21
TFTP(Trivial File Transfer Protocol):简单文件传输协议
作用:交换机、路由器的系统的重装
端口号:69
HTTP(Hyper Text Transport Protocol):超文本传输协议
作用:用于访问网站的Web服务器
端口号:80、443
DNS(Domain Name System):域名服务器
作用:解析域名和IP地址
端口号:53
SNMP(Simple Mangement Protocol):简单网络管理协议
作用:监控集群服务器
端口号:161
SMTP(Simple Mail Transfer Protocol):简单邮件传输协议
作用:发送邮件信息
端口号:25
IMAP( Mail Access Protocol):交互邮件访问协议
作用:接收邮件信息
端口号:143
POP3(Post Office Protocol - Version 3):邮件协议3代协议
作用:接收邮件信息(相比IMAP协议较老)
端口号:110
2、传输层
2.1、作用
报文的处理:对报文进行拆分和组装(数据包≤65535Byte)
协议的选择:根据传递数据的特点选择TCP协议或UDP协议;
端口封装:根据选择的传输协议封装对应协议的包头;
差错校验:对传输数据包的信息的校验,TCP协议会及时更改错误信息,而UDP不会更改错误信息;
2.2、常见的网络协议
传输层的协议共有TCP协议和UDP协议,此两种协议根据自己传输数据的特点,分别为应用层的所用协议服务。
TCP(Transfer contronl Protocol):传输控制协议
作用:面向连接,可靠的文件传输协议
端口:拥有所用应用层的端口号
特点:传输速度快,准确传递
常用软件:网站、邮件、电子游戏等
2.2.1、TCP协议数据格式
2.2.2、TCP包头
①、数量:2(16)=65535个
②、作用:
序列号:Seq序号 占32个bit,用于识别向目的端发的字节流,发送消息时会自动生成一个32bit 的随机数
确认号:Ack序号 占32个bit,只有Ack=1时,确认序号字段才有效,Ack=Seq+1。
标志位:共6个,即URG、ACK、PSH、RST、SYN、FIN等,具体含义如下:
UGR:紧急指针有效
ACK:确认序号有效
PSH:接收方应该尽快将这个报文交给应用层
RST:重置连接
SYN:发起一个新连接
FIN:释放一个新连接
2.2.2、TCP协议的三次握手
①、Client端发送SYN=1,Seq=m,Client端状态置为SYN_SENT等待Server端确认;
②、Server端识别到SYN=1,Seq=1后,发送SYN=1,ACK=1,ack=m+1,Seq=n给Client端,Server端进入SYN_RCVD状态;
③、Client端检查ACK=1,ack=m+1,满足建立连接的条件,进入established状态再次将ACK=1,ack=n+1发送给Server端,Server端检查ACK=1,ack=n+1成立就进入established状态,完成三次握手,开始数据传输。
2.2.3、TCP协议的四次挥手
①、Client端发送FIN=1,Seq=n,Client端进入FIN_WAIT1状态;
②、Server端收到FIN=1的标志后,进入CLOSE_WAIT状态,发送ACK=1,和ack=n+1,给Client端,Client端收到ACK=1,ack=n+1后进入FIN_WAIT2状态;
③、Server端发送FIN=1,ACK=1,ack=n+1,Seq=m,进入LAST_ACK状态,Client端接收到FIN=1,ACK=1,ack=n+1,Seq=m,后进入TIME_WAIT状态;
④、Client端收到FIN=1,ACK=1,ack=n+1,Seq=m,后发送ACK=1,ack=m+1,Server端进入CLOSE状态,完成四次挥手,断开连接。
UDP(User Datagram Protocol):用户数据报协议
作用:面向无连接,不可靠的文件传输协议
端口:53(DNS)、69(TFTP)、161(SNMP)
特点:传输速度快,不准确
常用软件:微信、QQ、短信等
3、网络层
3.1、作用
编辑数据的IP地址(打IP包头)、选择传递数据包的路由类型。
3.2、常见的网络协议
IP(Internet Protocol):网际互联协议
作用:IP地址包的分割、重组和传送
IPv4地址
分类1:A、B、C、D、E;
A类:二进制位必须以0开头
00000001.00000000.00000000.00000000 Min:1.0.0.0
01111111.11111111.11111111.11111111 Max:126.255.255.255
全部可以使用
0.0.0.0无意义
127.0.0.1是本地回环IP任何人都可以Ping通(查看本地网络协议是否正常)整个127网段只有127.0.0.1可以使用,其他都被用作特殊用途
B类:二进制位必须以10开头
10000000.00000000.00000000.00000000 Min:128.0.0.0
10111111.11111111.11111111.11111111 Max:191.255.255.255
全部可以使用
C类:二进制必须以110开头
11000000.00000000.00000000.00000000 Min:192.0.0.0
11011111.11111111.11111111.11111111 Max:223.255.255.255
全部可以使用
D类:二进制必须以1110开头
11100000.00000000.00000000.00000000 Min:224.0.0.0
11101111.11111111.11111111.11111111 Max:239.255.255.255
整个D类不允许直接使用,只能用于组播地址,即动态路由之间相互学习通信时的使用
E类:二进制必须以1111开头
11110000.00000000.00000000.00000000 Min:240.0.0.0
11111111.11111111.11111111.11111111 Max:255.255.255.255
255.255.255.255用作全网段广播使用,其余IP全部保留不允许直接使用
总结:只有A、B、C三类IP地址可以直接使用
由于IPv4的数量有限,所以将引入子网掩码将IP加以区分,子网掩码和IP地址同时存在才有意义,单独出现无意义。
默认子网
A类:255.0.0.0
B类:255.255.0.0
C类:255.255.255.0
由于IPv4数量不够用,将IP分为私有IP和公有IP
私有IP
特点 :可以免费使用,可以重叠使用,节省IP地址,需要通过NAT地址转换才能上网。
A类: 10.0.0.0 - - - - - - - 10.255.255.255
B类: 172.16.0.0 - - - - - - - 172.31.255.255
C类: 192.168.0.0 - - - - - - - 192.168.255.255
地址表示:4组10进制数
IPv6地址
特点:
①、拥有更高的安全性
②、加入了对全自动配置的支持
③、使用更小的路由表,提高了路由的转发速度
④、地址数量大幅度提升,拥有2(128)个地址数量
⑤、更好的支持QOS(服务质量)能确保特定服务不受延迟或丢弃
地址表示:8组16进制数
ARP(Address Resolution Protocol):地址解析协议
作用:将IP地址翻译为MAC地址
工作原理:广播
广播是网络层的广播,广播的是IP地址,查找MAC地址
广播域:广播可以到达的范围
RARP(Reverse Address Resolution Protocol):反向地址协议
作用:将MAC地址翻译为IP地址
IGMP(Internet Group Management Protocol):网络组管理协议
作用:管理同一个物理网段中的多播组
ICMP(Internet Control Message Protocol):互联网控制信息协议
作用:互联网探测,Ping命令的原理
4、数据链路层
4.1、作用
MAC地址寻址,编辑MAC地址(打MAC包头),差错校验
差错校验:检验MAC地址是否正确;
MAC地址寻址:不同网段之间网络信息传递(路由器)之间的MAC地址查询;
编辑MAC地址:打MAC地址包头;
4.2、常见的网络协议
PPP(Point to Point Protocol):点对点协议
网线直接连接的设备使用的协议
PPPOE(Point-to-Point Protocol Over Ethernet):点对点拨号协议
拨号上网,涉及账号、密码登录上网使用
5、物理层
5.1、作用
数据包的实际传递。
5.2、常见的网络协议
IEEE 820.3(有线局域网标准)
IEEE 802.4(无线局域网标准)