一些公司或是学校都会对内部的电脑做相关的带宽限制,在限制带宽的时候我们需要了解一些关关于TCP,UDP协议的知识。
IP
IP是一个无连接的协议,主要就是负责在主机间寻址并为数据包设定路由,在交换数据前它并不建立会话。因为它不保证正确传递,另一方面,数据在被收到时,IP不需要收到确认,所以它是不可靠的。
有一些字段,在当数据从传输层传下来时,会被附加在数据包中,我们来看一下这些字段:
源IP地址:用IP地址确定数据报发送者。
目标IP地址:用IP地址确定数据报目标。
协议:告知目的机的IP是否将包传给TCP或UDP。
检查和:一个简单的数学计算,用来证实收到的包的完整性。
TTL生存有效时间:指定一个数据报被丢弃之前,在网络上能停留多少时间(以秒计)。它避免了包在网络中无休止循环。路由器会根据数据在路由器中驻留的时间来递减TTL。其中数据报通过一次路由器,TTL至少减少一秒。
根据我们前面提到关于ARP的知识,如果IP地址目标为本地地址时,IP将数据包直接传给那个主机;如果目标地址为远程地址的话,IP在本地的路由表中查找远程主机的路由(看来好象我们平时拨114一样)。如果找到一个路由,IP用它传送数据包。如果没找到呢,就会将数据包发送到源主机的缺省网关,也称之为路由器。(很多时候一直在搞网关和路由器的定义,其实我觉得在学的时候不一定死抠概念,现在硬件和软件结合的产品越来越多了,一时很分清的,只要我们运用的时候可以解决实际问题嘛。)
这样当路由器收到一个包后,该包向上传给IP:
(1)如果交通阻塞(听起来蛮可怕的),包在路由器中停滞,TTL至少减1或更多。要是它降到0的话,包就会被抛弃。
(2)如果对于下一网络来说包太大的话,IP会将它分割成若干个小包。
(3)如果包被分解,IP为每个新包制造一个新头,其中包括:一个标志,用来显示其它小包在其后;一个小包ID,用来确定所有小包是一起的;一个小包偏移,用来告诉接收主机怎么重新组合它们。
(4)IP计算一个新的检验和。
(5)IP获取一个路由的目标硬件地址。
(6)IP转发包。
在下一主机,包被发送到TCP或UDP。每个路由器都要重复该过程。直到包到达最终目的地。当包到达最终目的地后,IP将小包组装成原来的包。
5、TCP
TCP是一种可靠的面向连接的传送服务。它在传送数据时是分段进行的,主机交换数据必须建立一个会话。它用比特流通信,即数据被作为无结构的字节流。
通过每个TCP传输的字段指定顺序号,以获得可靠性。如果一个分段被分解成几个小段,接收主机会知道是否所有小段都已收到。通过发送应答,用以确认别的主机收到了数据。对于发送的每一个小段,接收主机必须在一个指定的时间返回一个确认。如果发送者未收到确认,数据会被重新发送;如果收到的数据包损坏,接收主机会舍弃它,因为确认未被发送,发送者会重新发送分段。
端口
SOCKETS实用程序使用一个协议端口号来标明自己应用的唯一性。端口可以使用0到65536之间的任何数字。在服务请求时,操作系统动态地为客户端的应用程序分配端口号。
套接字
套接字在要领上与文件句柄类似,因为其功能是作为网络通信的终结点。一个应用程序通过定义三部分来产生一个套接字:主机IP地址、服务类型(面向连接的服务是TCP,无连接服务是UDP)、应用程序所用的端口。
TCP端口
TCP端口为信息的传送提供定地点,端口号小于256的定义为常用端口。
TCP的三次握手
TCP对话通过三次握手来初始化。三次握手的目的是使数据段的发送和接收同步;告诉其它主机其一次可接收的数据量,并建立虚连接。
我们来看看这三次握手的简单过程:
(1)初始化主机通过一个同步标志置位的数据段发出会话请求。
(2)接收主机通过发回具有以下项目的数据段表示回复:同步标志置位、即将发送的数据段的起始字节的顺序号、应答并带有将收到的下一个数据段的字节顺序号。
(3)请求主机再回送一个数据段,并带有确认顺序号和确认号。
TCP滑动窗口
TCP滑动窗口用来暂存两台主机间要传送的数据,有点类似CACHE。
每个TCP/IP主机有两个滑动窗口:一个用于接收数据,另一个用于发送数据。
6、UDP
用户数据报协议UDP提供了无连接的数据报服务。它适用于无须应答并且通常一次只传送少量数据的应用软件。
UDP端口
端口作为多路复用的消息队列使用。
15 NETSTAT 网络状态
53 DOMAIN 域名服务器
69 TFTP 平凡文件传送协议
137 NETBIOS-NS NETBIOS命令服务
138 NETBIOS-DGM NETBIOS数据报服务
161 SNMP SNMP网络监视器
UDP(User Datagram Protocol) 用户数据报协议
用户数据报协议(UDP)是 ISO 参考模型中一种无连接的传输层协议,提供面向事务的简单不可靠信息传送服务。 UDP 协议基本上是 IP 协议与上层协议的接口。 UDP 协议适用端口分辨运行在同一台设备上的多个应用程序。
由于大多数网络应用程序都在同一台机器上运行,计算机上必须能够确保目的地机器上的软件程序能从源地址机器处获得数据包,以及源计算机能收到正确的回复。这是通过使用 UDP 的“端口号”完成的。例如,如果一个工作站希望在工作站 128.1.123.1 上使用域名服务系统,它就会给数据包一个目的地址 128.1.123.1 ,并在 UDP 头插入目标端口号 53 。源端口号标识了请求域名服务的本地机的应用程序,同时需要将所有由目的站生成的响应包都指定到源主机的这个端口上。 UDP 端口的详细介绍可以参照相关文章。
与 TCP 不同, UDP 并不提供对 IP 协议的可靠机制、流控制以及错误恢复功能等。由于 UDP 比较简单, UDP 头包含很少的字节,比 TCP 负载消耗少。
UDP 适用于不需要 TCP 可靠机制的情形,比如,当高层协议或应用程序提供错误和流控制功能的时候。 UDP 是传输层协议,服务于很多知名应用层协议,包括网络文件系统(NFS)、简单网络管理协议(SNMP)、域名系统(DNS)以及简单文件传输系统(TFTP)。
协议结构
Source Port — 16位。源端口是可选字段。当使用时,它表示发送程序的端口,同时它还被认为是没有其它信息的情况下需要被寻址的答复端口。如果不使用,设置值为0。
Destination Port — 16位。目标端口在特殊因特网目标地址的情况下具有意义。
Length — 16位。该用户数据报的八位长度,包括协议头和数据。长度最小值为8。
Checksum — 16位。IP 协议头、UDP 协议头和数据位,最后用0填补的信息假协议头总和。如果必要的话,可以由两个八位复合而成。
Data — 包含上层数据信息。
UDP协议使用端口号为不同的应用保留其各自的数据传输通道。UDP和TCP协议正是采用这一机制实现对同一时刻内多项应用同时发送和接收数据的支持。数据发送一方(可以是客户端或服务器端)将UDP数据报通过源端口发送出去,而数据接收一方则通过目标端口接收数据。有的网络应用只能使用预先为其预留或注册的静态端口;而另外一些网络应用则可以使用未被注册的动态端口。因为UDP报头使用两个字节存放端口号,所以端口号的有效范围是从0到65535。一般来说,大于49151的端口号都代表动态端口。
数据报的长度是指包括报头和数据部分在内的总字节数。因为报头的长度是固定的,所以该域主要被用来计算可变长度的数据部分(又称为数据负载)。数据报的最大长度根据操作环境的不同而各异。从理论上说,包含报头在内的数据报的最大长度为65535字节。不过,一些实际应用往往会限制数据报的大小,有时会降低到8192字节。
UDP协议使用报头中的校验值来保证数据的安全。校验值首先在数据发送方通过特殊的算法计算得出,在传递到接收方之后,还需要再重新计算。如果某个数据报在传输过程中被第三方篡改或者由于线路噪音等原因受到损坏,发送和接收方的校验计算值将不会相符,由此UDP协议可以检测是否出错。这与TCP协议是不同的,后者要求必须具有校验值。
许多链路层协议都提供错误检查,包括流行的以太网协议,也许想知道为什么UDP也要提供检查和。其原因是链路层以下的协议在源端和终端之间的某些通道可能不提供错误检测。虽然UDP提供有错误检测,但检测到错误时,UDP不做错误校正,只是简单地把损坏的消息段扔掉,或者给应用程序提供警告信息。
UDP协议的几个特性
(1) UDP是一个无连接协议,传输数据之前源端和终端不建立连接,当它想传送时就简单地去抓取来自应用程序的数据,并尽可能快地把它扔到网络上。在发送端,UDP传送数据的速度仅仅是受应用程序生成数据的速度、计算机的能力和传输带宽的限制;在接收端,UDP把每个消息段放在队列中,应用程序每次从队列中读一个消息段。
(2) 由于传输数据不建立连接,因此也就不需要维护连接状态,包括收发状态等,因此一台服务机可同时向多个客户机传输相同的消息。
(3) UDP信息包的标题很短,只有8个字节,相对于TCP的20个字节信息包的额外开销很小。
(4) 吞吐量不受拥挤控制算法的调节,只受应用软件生成数据的速率、传输带宽、源端和终端主机性能的限制。
虽然UDP是一个不可靠的协议,但它是分发信息的一个理想协议。例如,在屏幕上报告股票市场、在屏幕上显示航空信息等等。UDP也用在路由信息协议RIP(Routing Information Protocol)中修改路由表。在这些应用场合下,如果有一个消息丢失,在几秒之后另一个新的消息就会替换它。UDP广泛用在多媒体应用中,例如,Progressive Networks公司开发的RealAudio软件,它是在因特网上把预先录制的或者现场音乐实时传送给客户机的一种软件,该软件使用的RealAudio audio-on-demand protocol协议就是运行在UDP之上的协议,大多数因特网电话软件产品、P2P下载工具、BT下载工具、看电影视频的一些客户端如pplive和PPS等也都运行在UDP端口协议之上。所以在旁路监控环境下,不管是用什么上网监控管理软件都是无法封堵UDP的,大家也不要被市面上的一些软件给骗了,用任意一台电脑就可以控制监控所有电脑的上网行为了,那些都是假的,有些是利用ARP包欺骗监控的,这种方式会产生大量的ARP欺骗包会影响到正常的网络,这样对公司的正常办公也会有影响了,像网上下载的P2P终结者就是利用这种方式来监控的,有些用户说了这个工具有时会有点效果,但公司的网络会变的不稳定,就是这个原因了。网路岗的使用方式有好几种供用户选择:交换机配置镜像或是添加HUB用旁路方式监控,采用双网卡配置透明网桥,双网卡配置代理服务器,直接安装在第三方的代理服务器上都可以实现有效的监控,只是在封堵上的效果会因为选择监控的方式不同而不同。
了解了TCP和UDP协议的知识后,大家大概就知道了如果用网路岗配置成旁路方式监控方式的话,使用网路岗就不能封堵P2P下载工具,PPLIVE,PPS等电影客户端,也不好限制下面电脑的带宽流量;如果把网路岗配置成网桥或是代理服务器的话,就可以使用网路岗封堵迅雷,P2P等下载工具,也可以限制下面电脑的流量。大家可以根据自己的需要决定把网路岗配置成何种方式来监控,旁路监控对监控主机的配置要求不是很高,网桥或是代理服务器的方式监控的对监控主机的配置要求很高,因为采用这种方式监控的话,下面电脑的数据都要经过这个监控主机来处理,所以对电脑的配置要求很高。如果只是想很好的监控一些上网行为记录的话,如监控上网记录,监控MSN,QQ聊天记录,邮件等,只要用普通的电脑配置成旁路方式监控也就可以了。如果又想监控那些上网行为记录,又想做下载的封堵的话,可以用安装网路岗的服务器配置成网桥或是代理服务器监控网络上网行为即可。
欢迎用户免费下载网路岗7局域网管理软件来监控管理您公司的网络,网路岗上网行为管理软件具有邮件监控、网络流量监控、聊天监控、上网监控等功能。
使用网路岗软件可以让您更安全有效快速的管理公司员工的上网行为
网路岗七代官方下载地址:http://www.softxp.net