书城科普读物探究式科普丛书-把世界变成地球村的互联网
49515000000003

第3章 互联网工作原理

在互联网还没有出现的时候,人与人之间的相互通信是靠传统的信息交换方式实现的,这就是通过邮件、电报或其他方式来通信,那么计算机呢?基于此,人们想到了用一种方式把电脑与电脑之间也实行通信,这就是互联网诞生的现实基础。互联网的本质是电脑与电脑之间互相通信并交换信息,这种通信跟人与人之间信息交流一样必须具备一些条件。比如,你给一位美国朋友写信,首先必须使用一种对方也能看懂的语言,然后还要知道并写上对方的通信地址,才能把信发出去。同样,电脑与电脑之间通信,首先也使用一种双方都能接受的“语言”——通信协议,然后还要知道电脑彼此的地址,通过协议和地址,电脑与电脑之间就能进行交流信息,这就形成了网络。

1.电脑世界语——TCP/IP协议

TCP/IP协议可以简单理解为网络通信协议。可别小看这个协议,这可是国际互联网络的基础。

TCP/IP是网络中使用的基本的通信协议。它实际上是一组协议,包括各种功能不同的协议,例如,远程登录、文件传输和电子邮件等。另外,TCP协议和IP协议是两个最基本的重要协议,能够保证数据完整地传输。

我们通常称TCP/IP协议为TCP/IP协议族,包括TCP、IP、UDP、ICMP、RIP、TELNETFTP、SMTP、ARP、TFTP等许多协议。那么,这些协议族中的英文分别代表什么意思呢?下面我们对协议族中一些常用协议的英文名称和用途进行一一介绍。

TCP,Transport Control Protocol的英文缩写,它是一种传输控制协议,提供可靠的、面向连接的传输控制,也就是在传输数据前要先建立逻辑连接,然后再传输数据,最后释放连接。TCP提供端到端、全双工通信;采用字节流方式,如果字节流太长,将它分段,并提供紧急数据传送功能。广播和多播不能用于TCP。在一个TCP连接中,只有两方进行彼此通信。

IP,互联网Working Protocol的英文缩写,是一种网间网协议,是为计算机网络相互连接进行通信而设计的。在因特网中,它是能使连接到网上的所有计算机网络实现相互通信的一套规则,规定了计算机在因特网上进行通信时应当遵守哪些方面的要求。任何厂家生产的计算机系统,只要遵守IP协议就可以与因特网互连互通。正是因为有了IP协议,因特网才得以迅速发展成为世界上最大的、开放的计算机通信网络。

通俗地讲,IP地址也可以称为互联网地址,用来标识互联网上计算机的唯一逻辑地址。每台联网计算机都依靠IP地址来标识自己,与我们所使用的电话号码很类似。通过电话号码能够找到相应的使用电话的客户的实际地址,IP地址也是一样,它也具有唯一性。如果同时在不同的计算机上使用相同的地址,就会产生网络冲突,从而使计算机无法正常联网。

UDP,User Datagram Protocol的英文缩写,指用户数据包协议。UDP提供的服务是不可靠的、无连接的服务,UDP适用于无须应答并且通常一次只传送少量数据的情况。UDP协议是分发信息的一个理想协议,因为它在数据传输过程中无须建立逻辑连接,对数据包也不进行检查,因此UDP具有较好的实时性,效率高。例如,在屏幕上报告股票市场、在屏幕上显示航空信息等等。UDP广泛用在多媒体应用中,大多数因特网电话软件产品也都运行在UDP之上。

ICMP,Internet Control Message Protocol的英文缩写,指互联网控制信息协议。它是TCP/IP协议族的一个子协议,用在IP主机、路由器之间传递控制消息。控制消息是指网络通不通、主机是否可以访问、路由是否可用等网络本身的消息。在网络中,我们一般觉察不到ICMP协议的使用,实际上,我们在网络中经常会使用到ICMP协议。比如我们经常使用的用于检查网络通不通的Ping命令,“Ping”的过程实际上就是ICMP协议工作的过程。ICMP协议是一个非常重要的协议,它对于网络安全具有极其重要的意义。ICMP协议本身的特点决定了它非常容易被用于攻击网络上的路由器和主机。

SMTP,Simple Mail Transfer Protocol的英文缩写,指简单邮件传输协议。SMTP是一种提供可靠且有效电子邮件传输的协议。SMTP是建立在FTP文件传输服务上的一种邮件服务,主要用于传输系统之间的邮件信息并提供有关来信的通知。

FTP,File Transfer Protocol的英文缩写,指文件传输协议。FTP的主要作用,就是让用户连接上一个远程计算机,察看远程计算机有哪些文件,然后把文件从远程计算机上拷贝到本地计算机上,或把本地计算机的文件传输到远程计算机上去。

SNMP,Simple Networkmanage Protocol的英文缩写,指简单网络管理协议。SNMP开发于20世纪90年代早期,其目的是简化大型网络中设备的管理和数据的获取。许多与网络有关的软件包,都用SNMP服务来简化网络的管理和维护。SNMP的所有通信字符串和数据都以明文形式发送,通信不加密,安全机制比较脆弱。攻击者一旦捕获了网络通信,就可以利用各种嗅探工具直接获取通信字符串,即使用户改变了通信字符串的默认值也无济于事。要避免SNMP服务带来的安全风险,最彻底的办法是直到确实需要使用SNMP时才启用它,一般情况下禁用SNMP。

ARP,Address Resolation Protocol的英文缩写,指地址解析协议。当我们在网页浏览器里面输入网址时,DNS服务器会自动把它解析为IP地址,浏览器实际上查找的是IP地址而不是网址。在局域网中,这是通过ARP协议来完成的。

2.网络中的电脑名字——IP地址

在上一部分,我们对TCP/IP协议做了简要的介绍,协议就像计算机与计算机之间的语言,如果想使计算机联网,除了语言外,还要有固定地址,那么怎样拥有这个地址呢?网络地址可以用网际协议地址(IP地址)来实现。IP地址是为了标识出互联网上主机的位置而设置的。互联网上的每一台计算机都被赋予唯一的互联网地址,这一地址是该计算机走进网络世界,实现与不同计算机之间通信的唯一地址,因此,IP地址具有唯一性。

3.容易记的电脑名字——域名地址

尽管IP地址能够唯一地标识网络上的计算机,但用户记忆IP十分不方便,因为IP地址是数字型的,于是人们又发明了另一套字符型的地址方案也就是域名地址。IP地址和域名是一一对应的,例如:河北科技大学的IP地址是202.206.64.xx,对应域名地址为www.hebust.edu.cn。这份域名地址的信息存放在一个叫域名服务器(DNS,Domain Name Server)的主机内,使用者只需了解易记的域名地址就可以了,域名服务器DNS负责它们的对应转换工作。DNS就是提供IP地址和域名之间的转换服务的服务器。

既然域名地址比IP地址有优势,那么域名地址都有哪些实际应用意义呢?域名地址是从右至左来表述它的意义的,最左边的是这台主机的机器名称,最右边的部分为顶层域。一般域名地址可以依次表示为主机机器名、单位名、网络名、顶层域名。如dns.hebust.edu.cn,这里的dns是河北科技大学的一个主机的机器名,hebust代表河北科技大学,edu代表中国教育科研网,cn代表中国,顶层域一般是网络机构或所在国家地区的名称缩写。

4.收发数据包——互联网如何工作

有了TCP/IP协议和IP地址的概念,我们就可以很好地理解互联网的工作原理了。当一个用户想给其他用户发送一个文件时,TCP先把该文件分成一个个小数据包,为了使接收方的机器确认传输是正确无误,TCP又在数据包上加上一些特定的信息(可以看成是装箱单),然后IP再在数据包上标上地址信息,这样就形成了可在互联网上传输的TCP/IP数据包。

当TCP/IP数据包到达目的地后,计算机首先去掉地址标志,利用TCP的装箱单检查数据在传输中是否有损失。如果接收方发现有损坏的数据包,就要求发送端重新发送这个被损坏的数据包,直到最后确认无误后,再将各个数据包重新组合还原成原文件。

就这样,互联网通过TCP/IP协议这一网上的“世界语”和IP地址实现了它的全球通信的功能。