因特网与TCP/IP

 

第15章 因特网与TCP/IP

  因特网(Internet)是全世界使用TCP/IP协议堆和网关设备(gateway)组成的网络,TCP/IP实际上已成为因特网的代名词。为对多媒体网络应用有比较深入的理解,就需要了解因特网的基本术语、结构和协议。因特网上使用的协议非常多,本章只选择了最普通的几个协议作了简单介绍,这些协议是HTTP、UDP、TCP和IP。在介绍协议过程中自然要涉及到协议定义的各种内部结构,这是为了更好地理解协议的功能和执行这些协议的软件。

15.1 因特网

15.1.1 因特网的结构

  因特网是由网络ARPANET(Advanced Research Projects Agency Network)发展而来,而ARPANET是美国国防部高级研究计划署在20世纪60年代支持创建的资源共享计算机网络。因特网是许许多多子网(subnetwork)集合而成的网络,这些子网都有一个共同的通信协议,这就是TCP/IP通信协议。因此不难理解人们往往把Internet与TCP/IP紧紧联系在一起。
  因特网的组织和新标准的采纳由因特网体系结构研究部(Internet Architecture Board,IAB)统管。IAB还协调好几个特别工作组,包括因特网工程特别工作组(Internet Engineering Task Force,IETF)和因特网研究特别工作组(Internet Research Task Force,IRTF)。
  组成因特网的子网之间在物理上的相互连接都是通过网关设备实现的,如图15-01所示。通过网关设备互相连接在一起的不同的网络通常称为子网(subnetwork),因为它们是大网络之中的网络。子网是一个完整的网络,是互联网络中的一部分,或者说子网是因特网中的一部分。网关设备与执行TCP/IP协议的其他设备和软件一起工作,它的最基本的任务就是从互联网络或者局域网络上接收按照协议规范封装的协议数据单元(Protocol Data Unit,PDU),然后把它们递送到下一个网关设备或者局域网络。


图15-01 子网之间通过网关设备相互连接

  在美国,因特网使用美国国家科学基金会NSF(National Science Foundation)资助的网络NSFnet作为全国性的主干网络,如图15-02所示。连接到主干网络NSFnet的网络有美国国家航空和宇宙航行局(National Aeronautics and Space Administration,NASA)的空间物理分析网络(Space Physics Analysis Network,SPAN),计算机科学网络(Computer Science Network,CSNET), BITNET(Because It's Time Network),WESTNET,UUNET(UNIX to UNIX Network)和圣地亚哥的巨型计算机网络(San Diego Supercomputer Network,SDSCNET),在图15-02上没有标出,……。


图15-02 美国在因特网上的部分子网

  NFSnet主干网由3000多个研究站点组成,通过T-3线路把它们互连在一起,数据速率是44.736 Mbps。为提高传输速率而采用的技术有同步光纤网络(Synchronous Optical Network,SONET),异步传输模式(Asynchronous Transfer Mode,ATM)网络以及由美国国家标准化学会ANSI提议的高性能并行接口(High-Performance Parallel Interface,HPPI)等技术,数据传输速率将达到1 Gb/s。

15.1.2 因特网地址的概念

  由通信协议使用的术语——地址(address)的含义很多,它可以指发送端地址、接收端地址、机器的端口地址、存储器地址、应用程序地址等等。因此当遇到这个术语时需要倍加小心,确信它所指的真正含义。
  网络地址(network address)类似于信函上的地址,它告诉传输系统把数据包(datagram)递送到何处去。在因特网上与地址相关的术语主要有3个:名称(name)、地址(address)和传输路线(route)。名称是一台机器、一个用户或者一个应用软件的唯一的标识符,它为数据包(datagram)提供一个绝对目标;地址用来标识这个绝对目标所在的位置,通常是它指网络上的物理位置或者逻辑位置;传输路线是告诉传输系统如何从这个地址中获取数据包。
  1. 名称地址
  人们经常使用收发者的名字来指定一个用户名或者一台机器。根据指定的名称,通过称为域名服务器(Domain Name Server,DNS)也叫做名称服务器(name server)的网络软件包去分析物理地址。例如,当发送电子邮件时,你可简单地指出接收者的名称,域名服务器就会想办法解决如何把电子邮件传送给接收者。使用域名服务器除了把名称转换成地址和传输路径之外,也为系统管理员或者网络管理员提供许多方便,更改网络时就不必要把更改内容告诉每一台机器。
  2. 物理地址
  网络上需要与他人通信的任何一台设备都需要一个唯一的地址——物理地址(physical address),有时也叫做硬件地址。在一个给定的网络上一个物理地址只能出现一次,否则域名服务系统就无法准确确定目标设备。硬件地址通常设计在网络接口卡上,通过开关或者软件进行设置。
  在物理层(物理层的概念见后面的介绍)上对每个过往的数据包(即协议数据单元PDU)进行分析,如果数据包中接收者的机器地址与这台设备的物理地址相匹配,就把这个数据包传送到这台设备的物理层,否则就不理睬。
  不同的计算机平台、网络和软件版本可能使用不同的名称约定,物理地址的长度也不相同。例如,以太网的物理地址使用48位,这是开发以太网的Xerox公司指定的地址长度。现在,为子网分配通用物理地址的任务由电气和电子工程师协会(Institute of Electrical & Electronic Engineers,IEEE)承担。IEEE为每个子网分配24位长的组织唯一标识符(organization unique identifier,OUI),而组织可指派另外一个24位的标识符。组织唯一标识符OUI的格式如图15-03所示。

1位

1位

22位

24位

I/G

U/L

IEEE指派的子网地址

当地分配的物理地址

     注:I/G(individual / group)=0:  个人地址 1:组地址(group)
       U/L(universal / local)=0:   IEEE指派 1:当地指派

图15-03 组织唯一标识符(OUI)

  在24位OUI格式中,有2位用作标志位,其余22位表示IEEE指派的子网物理地址。当整个OUI都设置成1时,表示网络上的所有站点都是目的地址。其余的24位用来表示当地管理的网络地址。用作组织唯一标识符OUI的24位和当地管理的24位组合在一起形成的地址称为媒体接入控制(media access control,MAC)地址。当封装在网络上传输信息包时,有两种MAC地址:发送地址和接收地址。
  3. 数据链路地址
  IEEE以太网标准使用的另一种地址叫做链路层地址(link layer address),用LSAP(link service access point)表示。LSAP表示在数据链路层(data link layer)上使用的链接协议的类型,自带寻址信息的、能够独立地从源端传送到终端的数据包(datagram)就携带有这种发送和接收的LSAP信息。

15.1.3 网际协议地址

  在因特网上的每台联网计算机都需要有一个唯一的地址,这样才能在计算机之间进行通信。为此,定义了两种形式来表示计算机在因特网上的地址:一种是机器可识别的用数字表示的地址,通常称为网际协议地址(Internet Protocol address,IP),简称为IP地址。因特网的IP地址由美国国家科学基金会于1993年组成的因特网信息中心注册服务部门(InterNIC Registration Services)进行分配和注册,InterNIC是NSFnet (Internet) Network Information Center的简写。IP地址就像你家中的电话一样,每一部电话都有一个唯一的电话号码,它是识别电话网络上某一部电话的标准方法。另一种是人比较容易看懂的用字母表示的地址,称为域名地址(domain name address)。这两种地址可用一个可能不太恰当的比方来帮助理解,例如我国的人口管理系统,每个公民都有一个用数字表示的身份证ID号码,又有一个用中文字表示的名字。
  IP地址在扩充之前共有32比特,由类别、网络地址和主机地址共3个部分组成:

类别

网络地址

主机地址

  IP地址分成5类:A类(Class A),B类(Class B),C类(Class C),D类(Class D)和E类(Class E)。其中A、B和C类地址是基本的因特网地址,是用户使用的地址,D类地址用于多目标广播的广播地址,E类地址为保留地址。IP地址的详细结构如图15-04所示。


图15-04 IP地址的组成

  A类地址用于有许多机器连网的大型网络,在这种情况下需要使用24位的主机地址(host address)来标识连网计算机,而网络地址(network address)使用7位来限制可被识别的网络数目;B类地址用于连网机器数目和网络数目都为中等程度的网络,在这种情况下使用16位的主机地址和14位的网络地址;C类地址用于连网机器数目少(最多256)而网络数目多的网络;D类地址用于多目标广播(multicasting)。
  32位的IP地址分成4组,每组为8位。因此可把A类地址想象成“网络地址.主机地址.主机地址.主机地址 ”,把B类地址想象成“网络地址.网络地址.主机地址.主机地址”,而把C类地址想象成“网络地址.网络地址.网络地址.主机地址”。
  32比特的IP地址用4个十进制数表示,并用句点(.)隔开,每个数都小于256。
  例如,10100110 01101111 00000001 01000010,用4个十进制数表示成166.111.1.66,是某个大学的一台服务器地址;
  又例如,11001010 01100000 00111101 10101000,用4个十进制数表示成202.96.61.168,是某个电报局的一台服务器地址。
  如果用w, x, y, z分别表示这4个字节,这3类地址的范围就为:
  A类:1.x.y.z ~ 126.x.y.z (其中,127.0.0.1不作IP地址,用于网络内部使用)
  B类:128.x.y.z ~ 191.x.y.z
  C类:192.x.y.z ~ 223.x.y.z
  D类:224.0.0.0~239.255.255.255 (其中,244.0.0.0不用,224.0.0.1分配给永久性IP主机组,包括网关)
  多目标广播的地址范围从224.0.0.0到239.255.255.255,也就是D类地址的范围。用于视听会议的MBone(multicast backbone)的地址由因特网号码分配局(Internet Assigned Numbers Authority,IANA)指定为224.2.*.* 。
  网络使用IP地址可以确定数据是否要通过网关设备送出。如果网络地址与当前的网络地址相同就不必通过网关设备,否则就要通过网关设备。

15.1.4 域名和域名系统

  域名(Domain Name)是连接到网络上的计算机或者计算机组的名称,在数据传输时用来标识计算机的电子方位,有时也指地理位置。域名通常包含组织名,而且始终包括两到三个字母的后缀,以指明组织的类型和所在的国家或者地区。例如,域名microsoft.com,其中microsoft是组织名,com是commercial的缩写,代表商业组织。在美国使用的其它后缀包括gov(政府)、edu(教育机构)、org(组织,一般指非盈利组织)以及net(网络,ISP使用)。在美国以外,两个字的后缀表示该域所在的国家或者地区,例如uk(英国)、de(德国)、jp(日本)。
  例如,www.bta.net.cn,其中,
   cn:       表示在中国的Internet
   net.cn:     表示中国邮电部负责组建的Internet商业网,即ChinaNET
   bta.net.cn:   表示北京地区的ChinaNET
   www.bta.net.cn: 表示北京地区ChinaNET上一台联网服务器的名字

  从这个例子可以看到,域名分成几个区域,从左到右表示区域的范围越来越大。域名最右边的区域具有最高级别,表示国家,如cn表示中国。
  因特网上的域名分为顶级(又称最高级)、二级、三级等不同等级,级别越低,域名越长。顶级域名有三类:
  1.国家和地区,如CN(中国)。
  2.国际顶级域名,INT(仅此一个)。
  3.通用顶级域名,共有10个(至1996年12月),如表15-01所示。

表15-01 通用顶级域名

域名

arts

文化娱乐

com

公司

firm

企业或公司

info

信息提供单位

net

网络单位

nom

个人

org

事业单位

rec

娱乐活动单位

store

售货企业

web

www单位

  由于美国是Internet的发起国,她的最高级别域名的表示法是一个特殊情况,最高级别域名表示的不是国家,而是网络的类型,例如www.microsoft.com。美国的最高级别域名分成6类,如表15-02所示。

表15-02 美国的最高级别域名

域名

com

edu

gov

mil

org

net

商业

教育

政府

军队

其它组织

网络资源

  由于人们不容易阅读使用4个十进制数表示连网机器和网络的IP地址,因此许多系统都采纳对人更容易阅读和理解的名称,这种地址叫做域名地址(domain name address)。域名地址是连接到因特网或者任何TCP/IP网络的某一台设备的地址。在分等级结构的系统中,使用“词”来标识服务器、组织和类型。例如www.tsinghua.edu.cn代表中国教育领域中清华大学使用HTTP协议的一台计算机。因此一台连网机器在因特网上既有用户使用的域名地址(例如,www.tsinghua.edu.cn),又有递送信息送软件使用的IP地址(例如,166.111.9.2),域名系统(Domain Name System,DNS)就是自动地把域名地址翻译成IP地址的系统。
  域名服务系统DNS(Domain Name System)中的域名服务DNS(Domain Name Service)软件实际上是一张两列的查找表,一列是帮助记忆计算机的名称,另一列是用数字表

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值