多语言展示
当前在线:1001今日阅读:75今日分享:44

应知的网络知识与安全问题:[6]TCP/IP协议1

我在写这些这个tcp/ip的教程时主要是考虑到现在的网际网路几乎全都是基于tcp/ip协议的,所以我们应该明白的一点就是这个tcp/ip的架构究竟是什么?它怎样为我们服务。它成为被称作“全球互联网”或“因特网(Internet)”的基础,能够将绝大部分的计算机连接起来,不管你用什么操作系统,可见tcp/ip体系是本世纪互联网发展的根本基石。对于网络程序员来说,;了解tcp/ip的机理,可以有构造任何网络应用程序的基本要素,什么winsocket,串口通讯等等甚至木马,你都会迎刃而解。当然,网络编程不是这里的内容了,讲也讲不完的,况且本人也在学习之中,可能还没入门,呵呵。好了,说了这么多开场白,我们开始第一阶段吧。一.首先说说网络协议的层次,网络协议通常分不同层次进行开发,每一层分别负责不同的通信功能。一个协议族,比如T C P / I P,是一组不同层次上的多个协议的组合。1)链路层,有时也称作数据链路层或网络接口层,通常包括操作系统中的设备驱动程序和计算中对应的网络接口卡。它们一起处理与电缆(或其他任何传输媒介)的物理接口细节。2) 网络层,有时也称作互联网层,处理分组在网络中的活动,例如分组的选路。在T C P / IP协议族中,网络层协议包括IP协议(网际协议),I C M P协议(I n t e r n e t互联网控制报文协议),以及I G M P协议(I n t e r n e t组管理协议)。3 ) 运输层主要为两台主机上的应用程序提供端到端的通信。在T C P / I P协议族中,有两个互不相同的传输协议: T CP(传输控制协议)和U D P(用户数据报协议)。T CP为两台主机提供高可靠性的数据通信。它所做的工作包括把应用程序交给它的数据分成合适的小块交给下面的网络层,确认接收到的分组,设置发送最后确认分组的超时时钟等。由于运输层提供了高可靠性的端到端的通信,因此应用层可以忽略所有这些细节。而另一方面,U DP则为应用层提供一种非常简单的服务。它只是把称作数据报的分组从一台主机发送到另一台主机,但并不保证该数据报能到达另一端。任何必需的可靠性必须由应用层来提供。应用层 Telnet、FTP和e-mail等运输层 TCP和UDP网络层 IP、ICMP和IGMP链路层 设备驱动程序及接口卡4 ) 应用层负责处理特定的应用程序细节。几乎各种不同的T C P / I P实现都会提供下面这些通用的应用程序:?Telnet远程登录,FTP 文件传输协议,SMTP 简单邮件传送协议,SNMP简单网络管理协议,现在想要给大家说的是大多数的网络应用程序都被设计成客户—服务器模式在同一层上,双方都有对应的一个或多个协议进行通信。例如,某个协议允许TC P层进行通信,而另一个协议则允许两个I P层进行通信。这里实际上就是说应用层本身本不注意数据的传递和交换,它一般只是一个用户进程,而上面我提到的运输层及其以下的三层的目的就是处理通信的过程,他们不管你应用程序的事,分工明确。二.还有一个概念问题,我们平时所听到的诸如tcp,ip,ftp等等,实际上协议本身是独立的,tcp是运输层协议,ip是网络层协议T C P/ I P协议族是一组不同的协议组合在一起构成的协议族。尽管通常称该协议族为T C P / IP,但T C P和IP只是其中的两种协议而已(该协议族的另一个名字是I n t e r n e t协议族(InternetProtocolSuite))网络接口层和应用层的目的是很显然的—前者处理有关通信媒介的细节(以太网、令牌环网等),而后者处理某个特定的用户应用程序( FT P、Te l n e t等)。但是,从表面上看,网络层和运输层之间的区别不那么明显。构造互连网最简单的方法是把两个或多个网络通过路由器进行连接。它是一种特殊的用于网络互连的硬件盒。路由器的好处是为不同类型的物理网络提供连接:以太网、令牌环网、点对点的链接和FD D I(光纤分布式数据接口)等等。这些盒子也称作I P路由器(IP Router),但我们这里使用路由器( R o u t e r)这个术语。从历史上说,这些盒子称作网关( g a t e w a y),在很多T C P / I P文献中都使用这个术语。现在网关这个术语只用来表示应用层网关:一个连接两种不同协议族的进程(例如,TCP/IP和IBM的SNA),它为某个特定的应用程序服务(常常是电子邮件或文件传输)。在TC P / I P协议族中,网络层IP提供的是一种不可靠的服务。也就是说,它只是尽可能快地把分组从源结点送到目的结点,但是并不提供任何可靠性保证。而另一方面, T CP在不可靠的I P层上提供了一个可靠的运输层。为了提供这种可靠的服务, T CP采用了超时重传、发送和接收端到端的确认分组等机制。由此可见,运输层和网络层分别负责不同的功能。至于那些机制是如何工作的,我也是肯定不知道的,呵呵,有电信学方面爱好的朋友可以深入研究一下。三.这里又有一个新概念:multihomed,任何具有多个接口的系统,英文都称作是多接口的。你也许和我一样会问:我们的主机也是多接口的,可以作router吗?我们一个主机也可以有多个接口,但一般不称作路由器,除非它的功能只是单纯地把分组从一个接口传送到另一个接口。同样,路由器并不一定指那种在互联网中用来转发分组的特殊硬件盒。大多数的T C P /IP实现也允许一个多接口主机来担当路由器的功能,但是主机为此必须进行特殊的配置。在这种情况下,我们既可以称该系统为主机(当它运行某一应用程序时,如FT P或Te l n et),也可以称之为路由器(当它把分组从一个网络转发到另一个网络时),在不同的场合下使用不同的术语。(其实我也很不喜欢术语,老外的东西,呵呵)然后我说说网桥,连接网络的另一个途径是使用网桥。网桥是在链路层上对网络进行互连,而路由器则是在网络层上对网络进行互连。网桥使得多个局域网(L A N)组合在一起,这样对上层来说就好像是一个局域网。
推荐信息