第7章互联网IP通信网•通过本章的学习,应深刻理解领会互联网的实质及其内涵。掌握互联网与因特网的结构、掌握TCP/IP协议的构成及相关的五个层次,了解IP通信网的基本概念与结构。掌握IEEE802.11无线局域网的基本概念与特点,掌握数据链路层与CSMA/CA协议的基本原理。本章学习目标•TCP/IP协议与传输协议•IP宽带城域网•IPOverATM、IPOverSDH、IPOverDWDM•IEEE802.11无线局域网与Wi-Fi•IEEE802.11数据链路层与CSMA/CA协议本章知识点物联网是基于互联网作为承载信息传送平台构建起来的,它是物联网的核心。互联网是两个或多个计算机通信网通过数据传输系统连接在一起的,而因特网则是遵守统一的因特网协议的互联的互联网。从通信系统的分层角度来看,互联网及因特网实质上是数据通信网上的一个特殊的业务网,它是在传送网、数据通信网之上的业务网,它不但能提供方便的信息传送与信息共享,而且还能实现各种信息的高层应用。7.1互联网与英特的结构•互联网是计算机通信网的典型代表,当在不同区域地域上的两个或多个计算机通信网通过数据通信连接在一起时,便成为了现在的互联网。7.1.1互联网的结构•互联网是一个计算机设备通过通信线路连接在一起的数据通信系统。•局域网是指小范围内的互联网,可以是在一个大楼内、也可以是在一个校园、厂区,局域网上可通信的设备可以是计算机、打印机或其他设备;连接局域网的通信线路可以是有线线路(如五类线)、也可以是无线线路(如2.4G的射频)。•路由器可以是具有有线连接接口的、也可以是无线接口的、或者有线与无线兼有的。•一般,两个局域网的互联需要通过路由器来互联,可以通过具有路由功能的网络交换机来互联。•广域网是地理范围较广的一个网络,要实现远距离的互联,需要采用长途通信线路。在实际的广域网中,一般直接采用数据通信网来实现广域网。•英特网(Internet)是目前应用非常广泛的互联网。人们所说的互联网,实际上特指的是英特网。英特网是互联的各个局域网、广域网遵守标准的互联通信协议的计算机通信网,目前所遵守的互联网协议是TCP/IP协议。7.1.2英特网的结构•Internet也是由通信线路、路由器和计算机设备构成的。但不同与一般互联网的是,Internet需要遵守共同的标准互联通信协议,即TCP/IP协议,还需要由一个英特网服务提供商ISP(InternetServiceProvider,ISP)提供服务。•ISP是就有一台或多台通过高速、宽带通信线路连接到互联网上的服务器(高性能计算机),它为互联用户提供各种信息服务和数据通信服务。目前,我国的ISP主要有中国电信、中国联通等。7.2TCP/IP协议簇及其分层•原TCP/IP协议簇定义为四层,即主机到网络层(数据链路层)、互联网层(网络层)、传输层和应用层。现今TCP/IP协议簇通常定义为五层。7.2.1TCP/IP协议簇分层•应用层允许用户访问网络,它负责向用户提供服务。应用层提供了电子邮件、远程文件访问和传输、浏览万维网()等服务。7.2.2应用层•互联网定义了两种体系结构:客户/服务器体系结构,和对等体系结构。客户/服务器是常见、常用的体系结构。•在客户/服务器体系结构中,每个应用由两个分开但又相关的程序组成,即客户端程序和服务器端程序。服务器端程序需要一直运行,而客户端程序只在需要时运行。一般将运行服务器端程序的主机称为服务器,而运行客户端程序的计算机称为客户。•客户端程序和服务器端间的通信称为进程到进程的通信,运行在这种体系结构中的程序称为进程。服务器进程是一直运行的服务器程序,它等待接收客户端进程的请求。当客户端程序运行时,客户端进程请求服务,该服务将被服务器进程响应。•当服务器端进程运行时,许多客户端进程都请求服务,并得到响应。1客户/服务器体系结构•为了标识一个特殊的HPPT站点,客户使用统一资源定位符(UniformResourceLocator,URL)。服务器应用层地址不是用来发送消息的,它是帮助客户找到服务器的实际地址。应注意的是,应用层客户端不需要地址,这是因为它不是服务的提供者,它仅接受服务。不同的站点有不同的应用层地址,虽然它们可能运行在相同类型的服务器上,如运行HTTP。2应用层地址•应用层地址不能用来发送消息,客户端需要服务器在网络上的实际地址。应用地址能帮助客户端找到网络中服务器的实际地址。网络中的每台计算机都有一个称为逻辑地址或IP地址的地址。•服务器应用层地址能帮助客户端找到服务器计算机的IP地址。客户端进程应该已经知道域名服务器(DomainNameServer,DNS)的地址。这些分布在英特网上服务器都有将域名匹配到IP地址的目录。客户端准备和发送消息到DNS服务器,询问它所需要的服务器的实际地址。当收到响应之后,客户端服务器就知道了需服务器的IP地址。•传输层负责整个消息的进程到进程的传输,以建立客户和服务器的传输层的逻辑通信。尽管通信是两个物理层间进行的,但两个应用层将传输层看成是负责消息传输的代理。7.2.3传输层•服务器可能同时运行多个进程,例如,FTP服务进程和HTTP进程。当消息到达服务器时,它必须指向确定的进程,为此我们需要另一个地址来标识服务器进程,即端口号。•大多数计算机都有给出服务器端口号的文件,而客户端端口号可以由运行客户端进程的计算机临时指定。但Internet限制了临时端口号的范围,以避免破坏已知的端口号的范围。1传输层的地址(端口号)•传输层负责实现拥塞控制。向下层传送的数据包可能发生通信拥塞,这可能引起丢弃一些数据包。有些协议为每个进程使用缓冲区,消息在发送前存储在缓冲区中,如果传输层检测到网络上发生拥塞,它就暂缓发送。2拥塞控制•传输层还负责实现流量控制。发送端的传输层能监控接收端的传输层,检查接收者收到的数据包是否过多。通过从接受者发出的确认信息,以确定接收者是否接收发送的数据报、以及确认发送的数据包是否过多。3流量控制•信息在传输过程中可能会出现损坏、丢失、重复或次序不正确等错误。传输层负责确保信息能被目的地的传输层正确接收。采用接收者通过向发送者发送确认消息,来实现差错控制。一般,传输层在缓冲区中保留发送信息的副本,直到接收到所发送信息的确认消息,并确认接收者正确接收后才可以删除该副本,否则就要将该副本重发,直到正确接收。考虑到信息是数据包的形式发送的,每个包需要有一个序号,以表示发送信息的次序,为此传输层给每个数据包加上序号,也同时给每个确认消息加上序号以表示接收者确认的次序。4差错控制•在TCP/IP协议簇中定义了三种传输层协议:UDP(UserDatagramProtocol)、TCP(TransmissionControlProtocol)和SCTP(StreamControlProtocol)。5传输协议•(1)UDP:用户数据报协议UDP,提供了一种无连接的、不可靠的通信协议。当接收者接收到的信息有误时,接收者将直接丢弃该信息,而不要求发送者重发。UDP的传输速度较快,但可靠性较差。•(2)TCP:传输控制协议TCP应用了数据包的序号、确认和校验和的方法实现可靠的信息传输。TCP在两个传输层间提供了逻辑连接,因此该协议称为面向连接的协议。•(3)SCTP:流控制协议SCTP是为一些预期的英特网服务而设计的,如英特网电话(IP电话)和视频流,该协议结合了UDP和TCP的优点。•网络层负责源到目的地的数据包发送,它可跨多个网络或链路,保障每个数据包从源到最终的目的地。7.2.4网络层•从客户端到服务器的数据包和从服务器返回的数据包需要网络层地址。服务器的地址由服务器提供,而客户端地址是客户端主机已知的。网络层应用路由表来找到下一跳路由器的逻辑地址,并把这个地址传递给数据链路层。如图7.2.5所示。1网络地址•网络层的另一个功能是进行路由选择,也就是确定数据包的部分或全部路径。•网络层的路由是需要选择的,当一个路由器接收到一个数据包时,它要检查路由表,决定这个数据包到最终目的地的最佳路线。路由表提供了下一路由器的IP地址。当数据包到达下一路由器时,下一路由器再做出新的决定,也就是说,路由器选择的决定是由每个路由器做出的。•路由器中的路由表需要更新,更新路由信息。路由表的更新是由路由选择协议来完成的,主要的路由协议有RIP、OSPF和BGP。2路由选择源是计算机A,目的地是计算机D。当数据包到达路由器R1时,R1选择了R4作为下一路由器,这可能是由于WAN1不工作或拥塞,R4选择R5作为下一路由器,最终,数据包被发送到目的地。在这里,路由器只采用了TCP/IP协议簇的前三层,它不需要传输层,应为传输层负责端到端的数据发送。•TCP/IP协议簇支持一个主协议IP和几个辅助协议,该辅助协议帮助IP完成其功能。3网络层协议•在TCP/IP协议簇中,网络层的主协议是英特网协议IP,其版本有IPv4和IPv6,目前常用IPv4。IPv4负责从源计算机到目的地计算机的数据包发送。•全球计算机和路由器都采用32位的IP地址标识,用点分十进制标记。该标记把32位地址分解为4个8位部分,每个部分写成0~255的十进制数,用三个点来隔开,例如00001010000110011010110000001111用点分十进制标记为10.25.172.15。•在消息发送的源头端,协议把源和目的的IP地址加到从应用层传送来的数据包中,然后准备发送。但是,实际的传输是由数据链路层和物理层来完成的。(1)IP协议•IPv6的地址范围可定义232(超过40亿)个不同的设备。但是,过去的地址分配方式产生了地址浪费,尽管采取了许多补救方法,但还是面临着地址耗尽的局面,为此IPv6出现了,它由128位构成,可以满足今后所有设备地址的需要。•IP提供了尽力而为服务,它不保证数据无误地到达或顺序到达,也不保证任何数据包都被发送,数据包可能会丢失。•英特网协议采用其他辅助协议来弥补其不足。•英特网控制消息协议ICMP可以用来报告一定数目的差错给源计算机。例如,由于拥塞,路由器丢失了一个数据包,ICMP可以发送一个数据包给源计算机,警告发生了拥塞。ICMP还可以用来检查英特网节点状态。•英特网小组管理协议ICMP,可以用来增加IP的多播能力。IP本质上是单播传输协议,即一个源和一个目的地。多播传输是指一个源和多个目的地。•地址解析协议ARP和反向地址解析协议RARP也是辅助协议。(2)辅助协议•从一个节点到另一个节点传送数据帧是数据链路层的功能。数据帧是用来封装数据包的。7.2.5数据链路层•一个设备可以静态地找到另一个设备的数据链路层地址。在静态方法中,设备创建具有两列的表,用于存储网络层和数据链路层地址对。在动态方法中,设备可以广播一个含有下一设备IP地址的特定数据包,并用这个IP地址询问邻近节点,邻近节点返回它的数据链路层地址,如图7.2.7所示。•与IP地址不同,数据链路层的地址不是通用的。每个数据链路协议可能使用不同的地址格式和大小。以太网协议使用48位地址,它通常写成十六进制格式,分成6部分,每部分两位十六进制数,例如:07:01:03:11:2D:5B。•数据链路层地址经常称为物理地址或介质访问控制(MAC)地址。1数据链路层地址•有些数据链路层协议在数据链路层使用差错控制与流量控制,方法与传输层相同。但是它仅在节点发出点与节点到达点实现。2差错控制与流量控制•物理层完成物理媒质上的二进制数据流传输所需要的功能。它将数据以帧的形式从一个节点传送到另一个节点。数据链路层传送的数据单位是帧,而物理层传送数据的单位是二进制比特。物理层不需要地址,它将二进制数码以电信号的形式传送到节点。7.2.6物理层TCP/IP协议的结构汇总•IP通信是一种基于因特网络协议(InternetProtocol,IP)发展起来的通信技术,而Internet则是将各地、各种计算机以TCP/IP协议连接起来进行数据通信的网络。Internet是IP通信基础,在Internet上可以开展各种