Chinaunix首页 | 论坛 | 博客
  • 博客访问: 346571
  • 博文数量: 222
  • 博客积分: 9349
  • 博客等级: 中将
  • 技术积分: 2135
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-07 13:45
文章分类

全部博文(222)

文章存档

2010年(222)

分类: LINUX

2010-08-18 19:19:31

1.1.1  Linux网络结构的特点

Linux在服务器领域已经非常成熟,其影响力日趋增大。Linux的网络服务功能非常强大,但是由于Linux的桌面应用和Windows相比还有一定差距,除了一些Linux专门实验室之外,大多数企业在应用Linux系统时,往往是Linux和Windows(或UNIX)等操作系统共存形成的异构网络。

在一个网络系统中,操作系统的地位是非常重要的。Linux网络操作系统以高效性和灵活性而著称。它能够在PC上实现全部的UNIX特性,具有多任务、多用户的特点。Linux的组网能力非常强大,它的TCP/IP代码是最高级的。Linux不仅提供了对当前的TCP/IP协议的完全支持,也包括了对下一代Internet协议IPv6的支持。Linux内核还包括了IP防火墙代码、IP防伪、IP服务质量控制及许多安全特性。Linux的网络实现是模仿FreeBSD的,它支持FreeBSD的带有扩展的Sockets(套接字)和TCP/IP协议。它支持两个主机间的网络连接和Sockets通信模型,实现了两种类型的Sockets:BSD Sockets和INET Sockets。它为不同的通信模型提供了两种传输协议,即不可靠的、基于消息的UDP传输协议和可靠的、基于流的TCP传输协议,并且都是在IP网际协议上实现的。INET Sockets是在以上两个协议及IP网际协议之上实现的,它们之间的关系如图1-1所示。

 
(点击查看大图)图1-1  Linux网络中的层
掌握OSI网络模型、TCP/IP模型及相关服务对应的层次对于理解Linux网络服务器是非常重要的。

1.1.2  TCP/IP四层模型和OSI七层模型

表1-1是 TCP/IP四层模型和OSI七层模型对应表。我们把OSI七层网络模型和Linux TCP/IP四层概念模型对应,然后将各种网络协议归类。

表1-1  TCP/IP四层模型和OSI七层模型对应表

OSI七层网络模型

Linux TCP/IP四层概念模型

对应网络协议

应用层(Application

应用层

TFTP, FTP, NFS, WAIS

表示层(Presentation

Telnet, Rlogin, SNMP, Gopher

会话层(Session

SMTP, DNS

传输层(Transport

传输层

TCP, UDP

网络层(Network

网际层

IP, ICMP, ARP, RARP, AKP, UUCP

数据链路层(Data Link

网络接口

FDDI, Ethernet, Arpanet, PDN, SLIP, PPP

物理层(Physical

IEEE 802.1A, IEEE 802.2IEEE 802.11

1.网络接口

网络接口把数据链路层和物理层放在一起,对应TCP/IP概念模型的网络接口。对应的网络协议主要是:Ethernet、FDDI和能传输IP数据包的任何协议。

2.网际层

网络层对应Linux TCP/IP概念模型的网际层,网络层协议管理离散的计算机间的数据传输,如IP协议为用户和远程计算机提供了信息包的传输方法,确保信息包能正确地到达目的机器。这一过程中,IP和其他网络层的协议共同用于数据传输,如果没有使用一些监视系统进程的工具,用户是看不到在系统里的IP的。网络嗅探器Sniffers是能看到这些过程的一个装置(它可以是软件,也可以是硬件),它能读取通过网络发送的每一个包,即能读取发生在网络层协议的任何活动,因此网络嗅探器Sniffers会对安全造成威胁。重要的网络层协议包括ARP(地址解析协议)、ICMP(Internet控制消息协议)和IP协议(网际协议)等。

3.传输层

传输层对应Linux TCP/IP概念模型的传输层。传输层提供应用程序间的通信。其功能包括:格式化信息流;提供可靠传输。为实现后者,传输层协议规定接收端必须发回确认信息,如果分组丢失,必须重新发送。传输层包括TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议),它们是传输层中最主要的协议。TCP建立在IP之上,定义了网络上程序到程序的数据传输格式和规则,提供了IP数据包的传输确认、丢失数据包的重新请求、将收到的数据包按照它们的发送次序重新装配的机制。TCP 协议是面向连接的协议,类似于打电话,在开始传输数据之前,必须先建立明确的连接。UDP也建立在IP之上,但它是一种无连接协议,两台计算机之间的传输类似于传递邮件:消息从一台计算机发送到另一台计算机,两者之间没有明确的连接。UDP不保证数据的传输,也不提供重新排列次序或重新请求的功能,所以说它是不可靠的。虽然UDP的不可靠性限制了它的应用场合,但它比TCP具有更好的传输效率。

4.应用层

应用层、表示层和会话层对应Linux TCP/IP概念模型中的应用层。应用层位于协议栈的顶端,它的主要任务是应用。一般是可见的,如利用FTP(文件传输协议)传输一个文件,请求一个和目标计算机的连接,在传输文件的过程中,用户和远程计算机交换的一部分是能看到的。常见的应用层协议有:HTTP、FTP、Telnet、SMTP和Gopher等。应用层是Linux网络设定最关键的一层。Linux服务器的配置文档主要针对应用层中的协议。TCP/IP模型各个层次的功能和协议如表1-2所示。

表1-2  TCP/IP模型各个层次的功能和协议

层次名称

    

    

网络接口

Host-to-Net Layer

负责实际数据的传输,对应OSI参考模型的下两层

HDLC(高级链路控制协议)

PPP(点对点协议)

SLIP(串行线路接口协议)

网际层

Inter-network Layer

负责网络间的寻址

数据传输,对应OSI参考模型的第三层

IP(网际协议)

ICMP(网际控制消息协议)

ARP(地址解析协议)

RARP(反向地址解析协议)

传输层

Transport Layer

负责提供可靠的传输服务,对应OSI参考模型的第四层

TCP(控制传输协议)

UDP(用户数据报协议)

续表

层次名称

    

    

应用层

Application Layer

负责实现一切与应用程序相关的功能,对应OSI参考模型的上三层

FTP(文件传输协议)

HTTP(超文本传输协议)

DNS(域名服务器协议)

SMTP(简单邮件传输协议)

NFS(网络文件系统协议)

说明  TCP/IP与OSI最大的不同在于OSI是一个理论上的网络通信模型,而TCP/IP则是实际运行的网络协议。

1.1.3  TCP/IP提供的主要用户应用程序

1.Telnet程序

Telnet程序提供远程登录功能。

2.文件传输协议

文件传输协议(FTP)允许用户将一个系统上的文件复制到另一个系统上。

3.简单邮件传输协议

简单邮件传输协议(SMTP)用于传输电子邮件。

4.Kerberos协议

Kerberos是一个受到广泛支持的安全性协议。

5.域名服务器协议

域名服务器协议(DNS)能使一台设备具有的普通名字转换成某个特定的网络地址。

6.简单网络管理协议

简单网络管理协议(SNMP)把用户数据报协议(UDP)作为传输机制,它使用和TCP/IP不同的术语,TCP/IP用客户端和服务器,而SNMP用管理器(Manager)和代理(Agent),代理提供设备信息,而管理器管理网络通信。

7.网络文件系统协议

网络文件系统协议(NFS)是由SUN Microsystems公司开发的一套协议,可使多台计算机能透明地访问彼此的目录。

8.远程过程调用

远程过程调用(RPC)是使应用软件能与另一台计算机(服务器)通信的一些函数。

9.普通文件传输协议

普通文件传输协议(TFTP)是一种缺乏任何安全性的、非常简单落后的文件传输协议。

10.传输控制协议

传输控制协议(TCP/IP中的TCP部分)是一种数据可靠传输的通信协议。

11.网际协议

网际协议(IP)负责在网络上传输由TCP/UDP装配的数据包。

12.网际控制消息协议

网际控制消息协议负责根据网络上设备的状态发出和检查消息,它可以将某台设备的故障通知到其他设备。

阅读(1291) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~