首页  编辑  

TCP/IP常识

Tags: /超级猛料/Network.网络通讯/TCP_IP/   Date Created:

TCP/IP 常识

什么是链路层?

TCP/IP协议族中,数据链路层的目的是发送和接收:

IP模块的IP数据报;

ARP模块的ARP请求和应答;

RARP模块的RARP请求和应答。

数据链路层的实现主要表现为网络驱动程序,或者说数据链路层的操作一般是网络驱动程序实现的。

什么是以太网?

以太网是最常见的一种采用广播信道的网络,所有与网络连接的工作站都可以看到网络上传递的数据。通过查看包含在帧中的目标地址,确定是否进行接收或放弃。以太网通常采用专门的网络接口卡或通过系统主电路板上的电路实现。

什么是PPP协议?

PPP(Point-to-Point Protocol点到点协议)是为在同等单元之间传输数据包这样的简单链路设计的链路层协议。这种链路提供全双工操作,并按照顺序传递数据包。设计目的主要是用来通过拨号或专线方式建立点对点连接发送数据。PPP协议是目前广域网上应用最广泛的协议之一,它的优点在于简单、具备用户验证能力、可以解决IP分配等。

PPP协议中提供了一整套方案来解决链路建立、维护、拆除、上层协议协商、认证等问题。PPP协议包含:

链路控制协议LCP(Link Control Protocol)

网络控制协议NCP(Network Control Protocol)

认证协议,最常用的包括口令验证协议PAP(Password Authentication Protocol)和挑战握手验证协议CHAP(Challenge-Handshake Authentication Protocol)。

什么是ARP/RARP协议?

ARP是几乎每种TCP/IP实现中的基本协议,但它通常在应用程序或系统管理员并未意识到的情况下完成工作。ARP缓冲是其操作的基础。

许多无盘系统用RARP在启动时获得其IP地址。RARP数据包格式与ARP几乎相同。RARP请求是广播的,标识发送者的硬件地址,要求别人回答发送者的IP地址;其应答通常是单目的。

什么是IP协议?

IP协议负责相邻计算机之间的通信。其主要功能包括:

提供一种无连接的、不可靠的、尽最大努力进行数据报传递的服务。

提供简单的IP数据报的选路。IP选路基于IP选路表,该表存储有关可能的目的网点及怎样到达目的网点的信息,主机或路由器软件需要传送数据报时,它就查询选路表来决定把数据报发往何处。

实现IP数据报的分片、重组。

什么是ICMP协议?

ICMP协议实现差错报告和控制。其中最常用的是ICMP回送请求和应答功能,ping采用这个协议用于检查链路的通断。

什么是传输层?

传输层的基本任务是提供应用程序之间的通信服务,这种通信又叫端到端通信。传输层提供两种协议--UDP和TCP。

什么是UDP?

UDP是一个简单的面向数据报的传输协议,不提供可靠性,但在一些对可靠性要求不高的应用中也是经常用到的。

组播(multicast)是一到多或者多到多的多方通信形式,远程会议、交互式仿真、分布式内容系统、多方游戏等应用都对组播业务(multicast service)提出了需求。由于TCP是有连接的,决定了TCP之上的应用程序不能够实现组播。基于UDP的应用程序能够通过组播发送和接收大大提高网络性能,合理利用网络带宽。

什么是TCP协议?

TCP协议提供可靠的传输服务以确保数据无差错、无乱码的到达。为了这个目的,TCP协议软件要进行协商,让接收方回送确认信息及让发送方重发丢失的分组。

什么是应用层?

TCP/IP协议为应用层的开发提供了一套Socket编程接口,用户可以基于这套Socket编程接口来完成适合自己的网络应用。

TCP/IP的一些常见的标准协议,如Telnet Client(远程登录客户端)、FTP Client(文件传输客户端)等。

什么是 DNS?

域名系统(DNS)是一种用于TCP/IP应用程序的分布式数据库,它基于UDP传输协议实现,提供主机名字和IP地址之间的转换。从应用的角度上看,对DNS的访问是通过一个地址解析器(resolver)来完成的,该解析器主要通过两个系统调用gethostbyname和gethostbyaddr来访问。前者接收主机名返回IP地址,而后者接收IP地址来寻找主机名字。解析器通过一个或多个名字服务去来完成这种相互转换。

什么是DHCP?

IP地址是IP网络上唯一标识一个接入终端最原始和最有效的标识符。给终端分配IP地址的方法有多种方式,如PPP协议的自协商方式、用户自己静态配置、管理员统一配置等方式。

PPP自协商方式虽然不用用户自己动手操作,但是需要安装专门的客户端软件,而且需要服务器处事先配置好用户的帐号和密码,否则用户无法上网,当然,其优点是安全性高。用户自己静态配置方式对于熟悉IP网络的人来说是一件很简单的事情,但对于普通用户来说,可真是难以理解,而且还须提防IP地址冲突的情况。管理员统一分配、配置的方式,需要有专人维护,规划整个网络,不仅成本高,而且管理员工作量太大。

更重要的是许多终端启动时不仅需要IP地址,而且还需要动态的获取更多的启动配置信息,如无盘工作站、CABLE MODEM就需要获得启动配置文件名和TFTP SERVER的IP地址等信息;其它一些特殊终端还需要获取其它一些特殊的信息,如EPHONE需要CALL SERVER的IP地址,IDT需要控制服务器的IP地址等。这些动态信息是前面几种主机配置方式所无法完成的。

正是基于这些要求,新的主机配置方式应运而生,最早的主机配置方式就是BOOTP协议(即引导程序协议),它是一种较老的系统引导协议,主要用于无盘工作站启动时从服务器上获取IP地址和启动文件名,多与TFTP协议配合使用;后来为了功能的扩展,又发展了DHCP协议,DHCP协议兼容BOOTP协议。

BOOTP和RARP类似,是用于相对静态的环境,其中每个主机都有一个永久的网络连接。管理人员创建一个BOOTP配置文件来定义每个主机的BOOTP参数。在计算机经常移动和实际计算机数目超过了可获得的IP主机地址时,这种只提供从主机标识到主机参数的静态映射就不适用了。

DHCP从两个方式上扩充了BOOTP:

可使计算机用一个消息获取它所需要的所有配置信息,即传送配置信息的协议;

允许计算机快速、动态的获取IP地址,即动态分配IP地址的机制。

DHCP支持三种类型的地址分配:

自动分配方式中,给主机指定一个永久的IP地址;

动态分配方式中,给主机指定一个有时间限制的IP地址,到时间或主机明确表示放弃这个地址时,这个地址可以被其它的主机使用;

手工分配方式中,主机的IP地址是由网络管理员指定的,DHCP只是把指定的IP地址告诉主机。

什么是TELNET协议?

Telnet是标准的提供远程登录功能的应用,几乎每个TCP/IP的实现都提供这个功能,它能够运行在不同操作系统的主机之间。远程登录采用客户-服务器模型,Telnet通过客户进程和服务器进程之间的协商机制,从而确定通信双方可以提供的功能特性。

什么是FTP协议?

FTP(File Transfer Protocol)是定义如何在TCP/IP网络中文件传输的一个标准协议,采用Client/Server模式,由客户端发起连接,向服务器提交FTP命令,服务器接收到命令后,返回对命令的响应,并完成相关文件操作。