1网络互联基础一、OSI七层协议OSI(OpenSysteminterconnection)开放系统互连参考模型ISO(InternationalStandardsOrganization)国际标准化组织1、物理层机械性能:接口的型状,尺寸的大小,引脚的数目和排列方式等。电气性能:接口规定信号的电压、电流、阻抗、波形、速率及平衡特性等。工程规范:接口引脚的意义、特性、标准。工作方式:确定数据位流的传输方式,如:单工、半双工或全双工。物理层协议有:美国电子工业协会(EIA)的RS232,RS422,RS423,RS485等;国际电报电话咨询委员会(CCITT)的X.25、X.21等;物理层的数据单位是位(BIT),典型设备是集线器HUB。2、链路层链路层屏蔽传输介质的物理特征,使数据可靠传送。内容包括介质访问控制、连接控制、顺序控制、流量控制、差错控制和仲裁协议等。链路层协议有:协议有面向字符的通讯协议(PPP)和面向位的通讯协议(HDLC)。仲裁协议:802.3、802.4、802.5,即:CSMA/CD(CarrierSenseMultipleAccesswithCollisionDetection)、TokenBus、TokenRing链路层数据单位是帧,实现对MAC地址的访问,典型设备是交换机Switch。3、网络层网络层管理连接方式和路由选择。连接方式:虚电路(VirtualCircuits)和数据报(Datagram)服务。虚电路是面向连接的(Connection-Oriented),数据通讯一次路由,通过会话建立的一条通路。数据报是非连接的(Connectionless-Oriented),每个数据报都有路由能力。网络层的数据单位是包,使用的是IP地址,典型设备是路由器Router。这一层可以进行流量控制,但流量控制更多的是使用第二层或第四层。4、传输层提供端到端的服务。可以实现流量控制、负载均衡。传输层信息包含端口、控制字和校验和。传输层协议主要是TCP和UDP。传输层位于OSI的第四层,这层使用的设备是主机本身。25、会话层会话层主要内容是通过会话进行身份验证、会话管理和确定通讯方式。一旦建立连接,会话层的任务就是管理会话。6、表示层表示层主要是解释通讯数据的意义,如代码转换、格式变换等,使不同的终端可以表示。还包括加密与解密、压缩与解压缩等。7、应用层应用层应该是直接面向用户的程序或服务,包括系统程序和用户程序,例如、FTP、DNS、POP3和SMTP等都是应用层服务。数据在发送时是数据从应用层至物理层的一个打包的过程,接收时是数据从物理层至应用层的一个解包的过程,从功能角度可分为三组,1、2层解决网络信道问题,3、4层解决传输问题,5、6、7层处理对应用进程的访问。从控制角度可分为二组,第1、2、3层是通信子网层,第4、5、6、7层是主机控制层。二、TCP/IP协议簇TCP/IP(TransmissionControlProtocol/InternetProtocol)已成为一个事实上的工业标准。TCP/IP是一组协议的代名词,它还包括许多协议,组成了TCP/IP协议簇。TCP/IP协议簇分为四层,IP位于协议簇的第二层(对应OSI的第三层),TCP位于协议簇的第三层(对应OSI的第四层)。TCP和IP是TCP/IP协议簇的中间两层,是整个协议簇的核心,起到了承上启下的作用。1、接口层TCP/IP的最低层是接口层,常见的接口层协议有:Ethernet802.3、TokenRing802.5、X.25、Framereley、HDLC、PPP等。2、网络层网络层包括:IP(InternetProtocol)协议、ICMP(InternetControlMessageProtocol)控制报文协议、ARP(AddressResolutionProtocol)地址转换协议、RARP(ReverseARP)反向地址转换协议。IP是网络层的核心,通过路由选择将下一跳IP封装后交给接口层。IP数据报是无连接服务。3ICMP是网络层的补充,可以回送报文。用来检测网络是否通畅。Ping命令就是发送ICMP的echo包,通过回送的echorelay进行网络测试。ARP是正向地址解析协议,通过已知的IP,寻找对应主机的MAC地址。RARP是反向地址解析协议,通过MAC地址确定IP地址。比如无盘工作站和DHCP服务。3、传输层传输层协议主要是:传输控制协议TCP(TransmissionControlProtocol)和用户数据报协议UDP(UserDatagramrotocol)。TCP是面向连接的通信协议,通过三次握手建立连接,通讯时完成时要拆除连接,由于TCP是面向连接的所以只能用于点对点的通讯。TCP提供的是一种可靠的数据流服务,采用“带重传的肯定确认”技术来实现传输的可靠性。TCP还采用一种称为“滑动窗口”的方式进行流量控制,所谓窗口实际表示接收能力,用以限制发送方的发送速度。UDP是面向无连接的通讯协议,UDP数据包括目的端口号和源端口号信息,由于通讯不需要连接,所以可以实现广播发送。UDP通讯时不需要接收方确认,属于不可靠的传输,可能会出丢包现象,实际应用中要求在程序员编程验证。4、应用层应用层一般是面向用户的服务。如FTP、TELNET、DNS、SMTP、POP3。FTP(FileTransmisionProtocol)是文件传输协议,一般上传下载用FTP服务,数据端口是20H,控制端口是21H。Telnet服务是用户远程登录服务,使用23H端口,使用明码传送,保密性差、简单方便。DNS(DomainNameService)是域名解析服务,提供域名到IP地址之间的转换。SMTP(SimpleMailTransferProtocol)是简单邮件传输协议,用来控制信件的发送、中转。POP3(PostOfficeProtocol3)是邮局协议第3版本,用于接收邮件。数据格式:数据帧:帧头+IP数据包+帧尾(帧头包括源和目标主机MAC地址及类型,帧尾是校验字)IP数据包:IP头部+TCP数据信息(IP头包括源和目标主机IP地址、类型、生存期等)IP数据信息:TCP头部+实际数据(TCP头包括源和目标主机端口号、顺序号、确认号、校验字等)三、TCP连接的建立1、TCP连接通过三次握手完成。4client首先请求连接,发一个SYN包;Server收到后回应SYN_ACK包;Client收到后再发ACK包。即:ClientServerSYN---收---SYN+ACKACK---收established表示建立状态,当某端发出数据包后收到了回应则进入established状态。在TCP/IP连接时,如果两端都是established状态,则握手成功,否则是无连接或半联接状态。2、套接字Socket套接字Socket由协议、IP地址和端口号组成,套接字表示一路通讯,一般是一个服务,如端口,Telnet是TCP的23端口。四、IP地址划分1、IP地址分类IP地址有四个段,包括网络标识和主机标识两部分:netid+hostid。IP地址应用分为A、B、C三类,D、E类是保留和专用的。ClassA0*******xxxxxxxxxxxxxxxxxxxxxxxxClassB10**************xxxxxxxxxxxxxxxxClassC110*********************xxxxxxxxClassD1110****************************ClassE1111****************************2、地址区间址址类地址区间网络数主机数A类1.0.0.1~126.255.255.25427-2=126224-2=16777214B类128.0.0.1~191.255.255.254214-2=16382216-2=65534C类192.0.0.1~223.255.255.254221-2=209715028-2=254D类224.0.0.1~239.255.255.255228=2684354560E类240.0.0.1~255.255.255.255228=26843545603、特殊地址主机地址全0表示为一个网络地址。主机地址全1表示为对应网络的广播地址。全0的IP地址:0.0.0.0,表示本机地址,只在启动过程时有效。5全1的IP地址255.255.255.255,表示本地广播(有的软件不支持)。私有地址:10.0.0.0-10.255.255.255172.16.0.0-172.31.255.255192.168.0.0-192.168.255.255127.0.0.0网络是回环网络loopback,用于本机测试。例如:ping127.0.0.1是测试本机网卡是否工作正常。4、子网掩码子网掩码用来区分网络地址和主机地址,标准的子网掩码为:A类:1.0.0.1~126.255.255.254netmask:255.0.0.0B类:128.0.0.1~191.255.255.254netmask:255.255.0.0C类:192.0.0.1~223.255.255.254netmask:255.255.255.0子网掩码和IP地址的“与”运算得出对应的网络地址。如果将子网掩码“1”的位数增加则网络地址数增加,形成子网。相当于网络的分隔。如果将子网掩码“1”的位数减小则网络地址数减少,形成超网。相当于网络的聚合。