网络互联基础-TCP/IP协议族
1、物理层
机械特性:接口的型状,尺寸的大小,引脚的数目和排列方式等。
电气特性:接口规定信号的电压、电流、阻抗、波形、速率及平衡特性等。功能特性:接口引脚的意义、特性、标准。电压表示范围的含义。
过程特性:确定数据位流的传输方式,事件发生顺序。如:单工、半双工或全双工。物理层协议有:
美国电子工业协会(EIA)的RS232,RS422,RS423,RS485等;
国际电报电话咨询委员会(CCITT)的X.
25、X.21等;
物理层的数据单位是位比特(BIT),典型设备是集线器HUB。
2、链路层
链路层屏蔽传输介质的物理特征,使数据可靠传送。
内容包括介质访问控制、连接控制、顺序控制、流量控制、差错控制和仲裁协议等。链路层协议有:
协议有面向字符的通讯协议(PPP)和面向位的通讯协议(HDLC)。
仲裁协议:802.3、802.
4、802.5,即:
CSMA/CD(Carrier Sense Multiple Acce with Collision Detection)、TokenBus、Token Ring
链路层数据单位是帧,实现对MAC地址的访问,典型设备是交换机Switch。
3、网络层
网络层管理连接方式和路由选择。
连接方式:虚电路(Virtual Circuits)和数据报(Datagram)服务。
虚电路是面向连接的(Connection-Oriented),数据通讯一次路由,通过会话建立的一条 通路。
数据报是非连接的(Connectionle-Oriented),每个数据报都有路由能力。网络层的数据单位是包,使用的是IP地址,典型设备是路由器Router。这一层可以进行流量控制,但流量控制更多的是使用第二层或第四层。
4、传输层
提供端到端的服务。可以实现流量控制、负载均衡。
传输层信息包含端口、控制字和校验和。
传输层协议主要是TCP和UDP。
传输层位于OSI的第四层,这层使用的设备是主机本身。
5、会话层
会话层主要内容是通过会话进行身份验证、会话管理和确定通讯方式。一旦建立连接,会话层的任务就是管理会话。
6、表示层
表示层主要是解释通讯数据的意义,如代码转换、格式变换等,使不同的终端可以表示。还包括加密与解密、压缩与解压缩等。
7、应用层
应用层应该是直接面向用户的程序或服务,包括系统程序和用户程序,例如www、FTP、DNS、POP3和SMTP等都是应用层服务。
从功能角度可分为三组,
1、2层解决网络信道问题,
3、4层解决传输问题,
5、
6、7层处理对应用进程的访问。
从控制角度可分为二组,第
1、
2、3层是通信子网层,第
4、
5、
6、7层是主机控制层。
二、TCP/IP 协议簇
TCP/IP协议簇分为四层,IP位于协议簇的第二层(对应OSI的第三层),TCP位于协议簇的第三层(对应OSI的第四层)。
TCP和IP是TCP/IP协议簇的中间两层,是整个协议簇的核心,起到了承上启下的作用。
1、接口层
TCP/IP的最低层是接口层,常见的接口层协议有:
Ethernet 802.3、Token Ring 802.
5、X.
25、Frame reley、HDLC、PPP等。
2、网络层
网络层包括:IP(Internet Protocol)协议、ICMP(Internet Control Meage Protocol)
控制报文协议、ARP(Addre Resolution Protocol)地址转换协议、RARP(Reverse ARP)反向 地址转换协议。
IP是网络层的核心,通过路由选择将下一跳IP封装后交给接口层。IP数据报是无连接服务
ICMP是网络层的补充,可以回送报文。用来检测网络是否通畅。
Ping命令就是发送ICMP的echo包,通过回送的echo relay进行网络测试。
ARP是正向地址解析协议,通过已知的IP,寻找对应主机的MAC地址。
RARP是反向地址解析协议,通过MAC地址确定IP地址。比如无盘工作站和DHCP服务。
3、传输层
传输层协议主要是:传输控制协议TCP(Transmiion Control Protocol)和用户数据报协 议UDP(User Datagram rotocol)。
TCP是面向连接的通信协议,通过三次握手建立连接,通讯时完成时要拆除连接,由于TCP是面向连接的所以只能用于点对点的通讯。
TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。
UDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。UDP通讯时不需要接收方确认,属于不可靠的传输,可能会出丢包现象,实际应用中要求在程序员编程验证。
4、应用层
应用层一般是面向用户的服务。如FTP、TELNET、DNS、SMTP、POP3。
FTP(File Transmision Protocol)是文件传输协议,一般上传下载用FTP服务,数据端口 是20H,控制端口是21H。
Telnet服务是用户远程登录服务,使用23H端口,使用明码传送,保密性差、简单方便。DNS(Domain Name Service)是域名解析服务,提供域名到IP地址之间的转换。
SMTP(Simple Mail Transfer Protocol)是简单邮件传输协议,用来控制信件的发送、中转。POP3(Post Office Protocol 3)是邮局协议第3版本,用于接收邮件。
数据格式:
数据帧:帧头+IP数据包+帧尾 (帧头包括源和目标主机MAC地址及类型,帧尾是校验字)
IP数据包:IP头部+TCP数据信息 (IP头包括源和目标主机IP地址、类型、生存期等)IP数据信息:TCP头部+实际数据(TCP头包括源和目标主机端口号、顺序号、确认
号、校
验字等)
三、TCP连接的建立
1、TCP连接通过三次握手完成。
client首先请求连接,发一个SYN包;Server收到后回应SYN_ACK包;Client收到后再发ACK包。即:
ClientServer
SYN--->收
ACK--->收
established表示建立状态,当某端发出数据包后收到了回应则进入established状态。在TCP/IP连接时,如果两端都是established状态,则握手成功,否则是无连接或半联接状态。
2、套接字Socket
套接字Socket由协议、IP地址和端口号组成,套接字表示一路通讯,一般是一个服务,如www服务是TCP的80端口,Telnet是TCP的23端口。
四、IP地址划分
1、IP地址分类
IP地址有四个段,包括网络标识和主机标识两部分:netid+hostid。
IP地址应用分为A、B、C三类,D、E类是保留和专用的。
Cla A0******* xxxxxxxx xxxxxxxx xxxxxxxx
Cla B10****** ******** xxxxxxxx xxxxxxxx
Cla C110***** ******** ******** xxxxxxxx
Cla D1110**** ******** ******** ********
Cla E1111**** ******** ******** ********
2、地址区间
址址类 地址区间网络数主机数
A 类 1.0.0.1~126.255.255.254 27-2=126 224-2=16777214
B 类 128.0.0.1~191.255.255.254 214-2=16382 216-2=65534
C 类 192.0.0.1~223.255.255.254 221-2=2097150 28-2=254
D 类 224.0.0.1~239.255.255.255 228=268435456 0
E 类 240.0.0.1~255.255.255.255 228=268435456 0
3、特殊地址
主机地址全0表示为一个网络地址。
主机地址全1表示为对应网络的广播地址。
全0的IP地址:0.0.0.0,表示本机地址,只在启动过程时有效。
全1的IP地址255.255.255.255,表示本地广播(有的软件不支持)。
私有地址:
10.0.0.0172.31.255.255
192.168.0.0 - 192.168.255.255
127.0.0.0网络是回环网络loopback,用于本机测试。例如:
ping 127.0.0.1 是测试本机网卡是否工作正常。
4、子网掩码
子网掩码用来区分网络地址和主机地址,标准的子网掩码为:
A 类: 1.0.0.1~126.255.255.254netmask:255.0.0.0
B 类:128.0.0.1~191.255.255.254netmask:255.255.0.0
C 类:192.0.0.1~223.255.255.254netmask:255.255.255.0
子网掩码和IP地址的“与”运算得出对应的网络地址。
如果将子网掩码“1”的位数增加则网络地址数增加,形成子网。相当于网络的分隔。如果将子网掩码“1”的位数减小则网络地址数减少,形成超网。相当于网络的聚合。