问题123 : TCP/IP协议的理解
TCP/IP ( Transmission Control Protocol/Internet
Protocol的简写),中文译名 为传输控制协议/因特网互联
协议,又叫网络通讯协议。这个协议是Internet最基本的协
议,也是Internet的基础。简单地说,它的名字是由网络层
的IP协议和传输层的TCP协议组成的。但是确切地说,
TCP/IP协议是一-组包括 TCP协议和IP协议,UDP ( User
Datagram Protocol )协议. ICMP (Internet Conrol
Message Protocol )协议和其他一些协议的协议组。
TCP/IP定义了电子设备(如计算机)如何连入因特网,以及
数据如何在它们之间传输的标准。它是互联网中的基本通信
语言或协议,在私网中,它也被用作通信协议。当用户直接
网络连接时,计算机应提供一个TCP/IP程序的标准实现,
而且接收所发送的信息的计算机也应有一个TCP/IP程序的
标准实现。
TCP/IP协议并不完全符合OSI标准定制的七层参考模
型,它采用了四层的层级结构,每-层都呼叫它的下一层所
提供的网络来完成自己的需求。这四层分别为以下几个方面:
应用层:应用程序间沟通的层,如万维网( WWW )、
简单电子邮件传输( SMTP ).文件传输协议(FTP).网络
远程访问协议( Telnet )等。
传输层:在此层中,它提供了节点间的数据传送,应用
程序之间的通信服务,主要功能是数据格式化、数据确认和
丢失重传等。主要协议包括TCP和UDP.
网际层IP:负责提供基本的数据封包传送功能,让每- -块
数据包都能够到达目的主机,但不检查是否被正确接收,主
要体现为IP协议。
网络接口层:接收IP数据报并进行传输,从网络上接收
物理帧,抽取IP数据报转交给下一-层,对实际的网络媒体的
管理,定义如何使用物理网络,如以太网。
对于网络开发者来说,关心最多的应该是最高的应用层,也
就是开发出能给用户直接使用的网络应用程序。开发者使用
传输层所提供的接口进行开发,常见的两种通信模型为TCP和UDP。
对于Java开发者来说,
JDK已经提供了充分的开发接
口, java.net包下的接口和类就是网络编程人员经常会光顾
的地方。Java关于网络开发的API的设计依然是遵循TCP/IP
的议的基本思想。常用的接口和类包括: ServerSocket.
Socket、URL等。