当前位置:首页 » 文件管理 » 多播缓存

多播缓存

发布时间: 2023-03-21 13:58:49

⑴ tcp协议通过什么来区分不同的连接

TCP/IP
不同的计算机系统,就好像语言不同的两个人互相见了面,完全不能交流信息。因而他们需要定义一些共通的东西来进行交流,TCP/IP就是为此而生。TCP/IP不是一个协议,而是一个协议族的统称。里面包括了IP协议,IMCP协议,TCP协议,以及我们更加熟悉的http、ftp、pop3协议等等。电脑有了这些,就好像学会了外语一样,就可以和其他的计算机终端做自由的交流了。
TCP/IP 层次
应用层(http、ftp、smtp) -->传输层(TCP、UDP)-->网络层(IP)-->数据链路层
域名系统 :域名系统是一个分布的数据库,它提供将主机名(就是网址啦)转换成IP地址的服务。
端口号(port): 注意,这个号码是用在TCP,UDP上的一个逻辑号码,并不是一个硬件端口,我们平时说把某某端口封掉了,也只是在IP层次把带有这个号码的IP包给过滤掉了而已。
应用编程接口:现在常用的编程接口有socket和TLI。
数据链路层
数据链路层有三个目的:
为IP模块发送和 接收IP数据报。
为ARP模块发送ARP请求和接收ARP应答。
为RARP发送RARP请 求和接收RARP应答
ip大家都听说过。至于ARP和RARP,ARP叫做地址解析协议,是用IP地址换MAC地址的一种协议,而RARP则叫做逆地址解析协议.
--
IP 、ARP 、RARP 协议
三者都是在网络层 ,ARP协议用来找到目标主机的Ethernet网卡Mac地址,IP则承载要发送的消息。数据链路层可以从ARP得到数据的传送信息,而从IP得到要传输的数据信息。
IP 协议
IP协议是TCP/IP协议的核心,所有的TCP,UDP,IMCP,IGCP的数据都以IP数据格式传输。要注意的是,IP不是可靠的协议,这是说,IP协议没有提供一种数据未传达以后的处理机制--这被认为是上层协议:TCP或UDP要做的事情。所以这也就出现了TCP是一个可靠的协议,而UDP就没有那么可靠的区别。

协议头
八位的TTL字段,还记得这个字段是做什么的么?这个字段规定该数据包在穿过多少个路由之后才会被抛弃(这里就体现出来IP协议包的不可靠性,它不保证数据被送达),某个ip数据包每穿过一个路由器,该数据包的TTL数值就会减少1,当该数据包的TTL成为零,它就会被自动抛弃。这个字段的最大值也就是255,也就是说一个协议包也就在路由器里面穿行255次就会被抛弃了,根据系统的不同,这个数字也不一样,一般是32或者是64,Tracerouter这个工具就是用这个原理工作的,tranceroute的-m选项要求最大值是255,也就是因为这个TTL在IP协议里面只有8bit。
现在的ip版本号是4,所以也称作IPv4。现在还有IPv6,而且运用也越来越广泛了。
IP路由选择
当一个IP数据包准备好了的时候,IP数据包(或者说是路由器)是如何将数据包送到目的地的呢?它是怎么选择一个合适的路径来"送货"的呢?
最特殊的情况是目的主机和主机直连,那么主机根本不用寻找路由,直接把数据传递过去就可以了。至于是怎么直接传递的,这就要靠ARP协议了。
稍微一般一点的情况是,主机通过若干个路由器(router)和目的主机连接。那么路由器就要通过ip包的信息来为ip包寻找到一个合适的目标来进行传递,比如合适的主机,或者合适的路由。路由器或者主机将会用如下的方式来处理某一个IP数据包
如果IP数据包的TTL(生命周期)以到,则该IP数据包就被抛弃。
搜索路由表,优先搜索匹配主机,如果能找到和IP地址完全一致的目标主机,则将该包发向目标主机
搜索路由表,如果匹配主机失败,则匹配同子网的路由器,这需要“子网掩码(1.3.)”的协助。如果找到路由器,则将该包发向路由器。
搜索路由表,如果匹配同子网路由器失败,则匹配同网号路由器,如果找到路由器,则将该包发向路由器。
搜索路由表,如果以上都失败了,就搜索默认路由,如果默认路由存在,则发包
如果都失败了,就丢掉这个包
这再一次证明了,ip包是不可靠的。因为它不保证送达。
ARP协议
还记得数据链路层的以太网的协议中,每一个数据包都有一个MAC地址头么?我们知道每一块以太网卡都有一个MAC地址,这个地址是唯一的,那么IP包是如何知道这个MAC地址的?这就是ARP协议的工作。
ARP(地址解析)协议是一种解析协议,本来主机是完全不知道这个IP对应的是哪个主机的哪个接口,当主机要发送一个IP包的时候,会首先查一下自己的ARP高速缓存(就是一个IP-MAC地址对应表缓存),如果查询的IP-MAC值对不存在,那么主机就向网络发送一个ARP协议广播包,这个广播包里面就有待查询的IP地址,而直接收到这份广播的包的所有主机都会查询自己的IP地址,如果收到广播包的某一个主机发现自己符合条件,那么就准备好一个包含自己的MAC地址的ARP包传送给发送ARP广播的主机,而广播主机拿到ARP包后会更新自己的ARP缓存(就是存放IP-MAC对应表的地方)。发送广播的主机就会用新的ARP缓存数据准备好数据链路层的的数据包发送工作。
arp -a 可以查询自己的arp缓存
这样的高速缓存是有时限的,一般是20分钟(伯克利系统的衍生系统)。
--
ICMP协议
--
UDP 协议
UDP是传输层协议,和TCP协议处于一个分层中,但是与TCP协议不同,UDP协议并不提供超时重传,出错重传等功能,也就是说其是不可靠的协议。
1 、UDP 的端口号
由于很多软件需要用到UDP协议,所以UDP协议必须通过某个标志用以区分不同的程序所需要的数据包。端口号的功能就在于此,例如某一个UDP程序A在系统中注册了3000端口,那么,以后从外面传进来的目的端口号为3000的UDP包都会交给该程序。端口号理论上可以有2^16这么多。因为它的长度是16个bit
2 、UDP 的检验和
这是一个可选的选项,并不是所有的系统都对UDP数据包加以检验和数据(相对TCP协议的必须来说),但是RFC中标准要求,发送端应该计算检验和。
UDP检验和覆盖UDP协议头和数据,这和IP的检验和是不同的,IP协议的检验和只是覆盖IP数据头,并不覆盖所有的数据。UDP和TCP都包含一个伪首部,这是为了计算检验和而摄制的。伪首部甚至还包含IP地址这样的IP协议里面都有的信息,目的是让UDP两次检查数据是否已经正确到达目的地。如果发送端没有打开检验和选项,而接收端计算检验和有差错,那么UDP数据将会被悄悄的丢掉(不保证送达),而不产生任何差错报文。
3 、UDP 的长度
UDP可以很长很长,可以有65535字节那么长。但是一般网络在传送的时候,一次一般传送不了那么长的协议(涉及到MTU的问题),就只好对数据分片,当然,这些是对UDP等上级协议透明的,UDP不需要关心IP协议层对数据如何分片。
4 、IP 分片
IP在从上层接到数据以后,要根据IP地址来判断从那个接口发送数据(通过选路),并进行MTU的查询,如果数据大小超过MTU就进行数据分片。数据的分片是对上层和下层透明,而数据也只是到达目的地还会被重新组装,不过不用担心,IP层提供了足够的信息进行数据的再组装。
在IP头里面,16bit识别号唯一记录了一个IP包的ID,具有同一个ID的IP片将会被重新组装;而13位片偏移则记录了某IP片相对整个包的位置;而这两个表示中间的3bit标志则标示着该分片后面是否还有新的分片。这三个标示就组成了IP分片的所有信息,接受方就可以利用这些信息对IP数据进行重新组织(就算是后面的分片比前面的分片先到,这些信息也是足够了)。
因为分片技术在网络上被经常的使用,所以伪造IP分片包进行流氓攻击的软件和人也就层出不穷。
5 、ICMP源站抑制差错
当目标主机的处理速度赶不上数据接收的速度,因为接受主机的IP层缓存会被占满,所以主机就会发出一个“我受不了”的一个ICMP报文。
--
单播广播和多播
单播
单播是说,对特定的主机进行数据传送。例如给某一个主机发送IP数据包。这时候,数据链路层给出的数据头里面是非常具体的目的地址,对于以太网来 说,就是网卡的MAC地址(不是FF-FF-FF-FF-FF-FF这样的地址)。现在的具有路由功能的主机应该可以将单播数据定向转发,而目的主机的网 络接口则可以过滤掉和自己MAC地址不一致的数据。
广播
广播是主机针对某一个网络上的所有主机发送数据包。这个网络可能是网络,可能是子网,还可能是所有的子网。如果是网络,例如A类网址的广播就是 netid.255.255.255,如果是子网,则是netid.netid.subnetid.255;如果是所有的子网(B类IP)则是则是 netid.netid.255.255。广播所用的MAC地址FF-FF-FF-FF-FF-FF。网络内所有的主机都会收到这个广播数据,网卡只要把 MAC地址为FF-FF-FF-FF-FF-FF的数据交给内核就可以了。一般说来ARP,或者路由协议RIP应该是以广播的形式播发的。
多播
可以说广播是多播的特例,多播就是给一组特定的主机(多播组)发送数据,这样,数据的播发范围会小一些(实际上播发的范围一点也没有变小),多播的MAC地址是最高字节的低位为一,例 如01-00-00-00-00-00。多播组的地址是D类IP,规定是224.0.0.0-239.255.255.255。
虽然多播比较特殊,但是究其原理,多播的数据还是要通过数据链路层进行MAC地址绑定然后进行发送。所以一个以太网卡在绑定了一个多播IP地址之后,必 定还要绑定一个多播的MAC地址,才能使得其可以像单播那样工作。这个多播的IP和多播MAC地址有一个对应的算法,在书的p133到p134之间。可以看到 这个对应不是一一对应的,主机还是要对多播数据进行过滤。
--
TCP
TCP和UDP处在同一层---运输层,但是TCP和UDP最不同的地方是,TCP提供了一种可靠的数据传输服务,TCP是面向连接的,也就是说,利用TCP通信的两台主机首先要经历一个“拨打电话”的过程,等到通信准备结束才开始传输数据,最后结束通话。所以TCP要比UDP可靠的多,UDP是把数据直接发出去,而不管对方是不是在收信,就算是UDP无法送达,也不会产生ICMP差错报文,这一经时重申了很多遍了。
把TCP保证可靠性的简单工作原理:
应用数据被分割成TCP认为最适合发送的数据块。这和UDP完全不同,应用程序产生的 数据报长度将保持不变。由TCP传递给IP的信息单位称为报文段或段
当TCP发出一个段后,它启动一个定时器,等待目的端确认收到这个报文段。如果不能 及时收到一个确认,将重发这个报文段.
当TCP收到发自TCP连接另一端的数据,它将发送一个确认。这个确认不是立即发送,通常将推迟几分之一秒.
TCP将保持它首部和数据的检验和。这是一个端到端的检验和,目的是检测数据在传输 过程中的任何变化。如果收到段的检验和有差错, T P将丢弃这个报文段和不确认收到此报文段(希望发端超时并重发)。
既然TCP报文段作为IP数据报来传输,而IP数据报的到达可能会失序,因此TCP报文段 的到达也可能会失序。如果必要, TCP将对收到的数据进行重新排序,将收到的数据以正确的顺序交给应用层。
TCP还能提供流量控制。TCP连接的每一方都有固定大小的缓冲空间。TCP的接收端只允许另一端发送接收端缓冲区所能接纳的数据。这将防止较快主机致使较慢主机的缓冲区溢出。
从这段话中可以看到,TCP中保持可靠性的方式就是超时重发,这是有道理的,虽然TCP也可以用各种各样的ICMP报文来处理这些,但是这也不是可靠的,最可靠的方式就是只要不得到确认,就重新发送数据报,直到得到对方的确认为止。
TCP的首部和UDP首部一样,都有发送端口号和接收端口号。但是显然,TCP的首部信息要比UDP的多,可以看到,TCP协议提供了发送和确认所需要的所有必要的信息。可以想象一个TCP数据的发送应该是如下的一个过程。
双方建立连接
发送方给接受方TCP数据报,然后等待对方的确认TCP数据报,如果没有,就重新发,如果有,就发送下一个数据报。
接受方等待发送方的数据报,如果得到数据报并检验无误,就发送ACK(确认)数据报,并等待下一个TCP数据报的到来。直到接收到FIN(发送完成数据报)
中止连接
可以想见,为了建立一个TCP连接,系统可能会建立一个新的进程(最差也是一个线程),来进行数据的传送
--
TCP协议
TCP是一个面向连接的协议,在发送输送之前 ,双方需要确定连接。而且,发送的数据可以进行TCP层的分片处理。
TCP连接的建立过程 ,可以看成是三次握手 。而连接的中断可以看成四次握手 。
1.连接的建立
在建立连接的时候,客户端首先向服务器申请打开某一个端口(用SYN段等于1的TCP报文),然后服务器端发回一个ACK报文通知客户端请求报文收到,客户端收到确认报文以后再次发出确认报文确认刚才服务器端发出的确认报文(绕口么),至此,连接的建立完成。这就叫做三次握手。如果打算让双方都做好准备的话,一定要发送三次报文,而且只需要三次报文就可以了。
可以想见,如果再加上TCP的超时重传机制,那么TCP就完全可以保证一个数据包被送到目的地。
2.结束连接
TCP有一个特别的概念叫做half-close,这个概念是说,TCP的连接是全双工(可以同时发送和接收)连接,因此在关闭连接的时候,必须关闭传和送两个方向上的连接。客户机给服务器一个FIN为1的TCP报文,然后服务器返回给客户端一个确认ACK报文,并且发送一个FIN报文,当客户机回复ACK报文后(四次握手),连接就结束了。
3.最大报文长度
在建立连接的时候,通信的双方要互相确认对方的最大报文长度(MSS),以便通信。一般这个SYN长度是MTU减去固定IP首部和TCP首部长度。对于一个以太网,一般可以达到1460字节。当然如果对于非本地的IP,这个MSS可能就只有536字节,而且,如果中间的传输网络的MSS更加的小的话,这个值还会变得更小。
4.客户端应用程序的状态迁移图
客户端的状态可以用如下的流程来表示:
CLOSED->SYN_SENT->ESTABLISHED->FIN_WAIT_1->FIN_WAIT_2->TIME_WAIT->CLOSED
以上流程是在程序正常的情况下应该有的流程,从书中的图中可以看到,在建立连接时,当客户端收到SYN报文的ACK以后,客户端就打开了数据交互地连接。而结束连接则通常是客户端主动结束的,客户端结束应用程序以后,需要经历FIN_WAIT_1,FIN_WAIT_2等状态,这些状态的迁移就是前面提到的结束连接的四次握手。
5.服务器的状态迁移图
服务器的状态可以用如下的流程来表示:
CLOSED->LISTEN->SYN收到->ESTABLISHED->CLOSE_WAIT->LAST_ACK->CLOSED
在建立连接的时候,服务器端是在第三次握手之后才进入数据交互状态,而关闭连接则是在关闭连接的第二次握手以后(注意不是第四次)。而关闭以后还要等待客户端给出最后的ACK包才能进入初始的状态。
6.TCP服务器设计
前面曾经讲述过UDP的服务器设计,可以发现UDP的服务器完全不需要所谓的并发机制,它只要建立一个数据输入队列就可以。但是TCP不同,TCP服务器对于每一个连接都需要建立一个独立的进程(或者是轻量级的,线程),来保证对话的独立性。所以TCP服务器是并发的。而且TCP还需要配备一个呼入连接请求队列(UDP服务器也同样不需要),来为每一个连接请求建立对话进程,这也就是为什么各种TCP服务器都有一个最大连接数的原因。而根据源主机的IP和端口号码,服务器可以很轻松的区别出不同的会话,来进行数据的分发。
TCP的交互数据流
对于交互性要求比较高的应用,TCP给出两个策略来提高发送效率和减低网络负担:(1)捎带ACK。(2)Nagle算法(一次尽量多的发数据)
捎带ACK的发送方式
这个策略是说,当主机收到远程主机的TCP数据报之后,通常不马上发送ACK数据报,而是等上一个短暂的时间,如果这段时间里面主机还有发送到远程主机的TCP数据报,那么就把这个ACK数据报“捎带”着发送出去,把本来两个TCP数据报整合成一个发送。一般的,这个时间是200ms。可以明显地看到这个策略可以把TCP数据报的利用率提高很多。
Nagle算法
上过bbs的人应该都会有感受,就是在网络慢的时候发贴,有时键入一串字符串以后,经过一段时间,客户端“发疯”一样突然回显出很多内容,就好像数据一下子传过来了一样,这就是Nagle算法的作用。
Nagle算法是说,当主机A给主机B发送了一个TCP数据报并进入等待主机B的ACK数据报的状态时,TCP的输出缓冲区里面只能有一个TCP数据报,并且,这个数据报不断地收集后来的数据,整合成一个大的数据报,等到B主机的ACK包一到,就把这些数据“一股脑”的发送出去。虽然这样的描述有些不准确,但还算形象和易于理解,我们同样可以体会到这个策略对于低减网络负担的好处。
在编写插口程序的时候,可以通过TCP_NODELAY来关闭这个算法。并且,使用这个算法看情况的,比如基于TCP的X窗口协议,如果处理鼠标事件时还是用这个算法,那么“延迟”可就非常大了。
2.TCP的成块数据流
对于FTP这样对于数据吞吐量有较高要求的要求,将总是希望每次尽量多的发送数据到对方主机,就算是有点“延迟”也无所谓。TCP也提供了一整套的策略来支持这样的需求。TCP协议中有16个bit表示“窗口”的大小,这是这些策略的核心。
2.1.传输数据时ACK的问题
在解释滑动窗口前,需要看看ACK的应答策略,一般来说,发送端发送一个TCP数据报,那么接收端就应该发送一个ACK数据报。但是事实上却不是这样,发送端将会连续发送数据尽量填满接受方的缓冲区,而接受方对这些数据只要发送一个ACK报文来回应就可以了,这就是ACK的累积特性,这个特性大大减少了发送端和接收端的负担。
2.2.滑动窗口
滑动窗口本质上是描述接受方的TCP数据报缓冲区大小的数据,发送方根据这个数据来计算自己最多能发送多长的数据。如果发送方收到接受方的窗口大小为0的TCP数据报,那么发送方将停止发送数据,等到接受方发送窗口大小不为0的数据报的到来。
2.3.数据拥塞
上面的策略用于局域网内传输还可以,但是用在广域网中就可能会出现问题,最大的问题就是当传输时出现了瓶颈(比如说一定要经过一个slip低速链路)所产生的大量数据堵塞问题(拥塞),为了解决这个问题,TCP发送方需要确认连接双方的线路的数据最大吞吐量是多少。这,就是所谓的拥塞窗口。
拥塞窗口的原理很简单,TCP发送方首先发送一个数据报,然后等待对方的回应,得到回应后就把这个窗口的大小加倍,然后连续发送两个数据报,等到对方回应以后,再把这个窗口加倍(先是2的指数倍,到一定程度后就变成现行增长,这就是所谓的慢启动),发送更多的数据报,直到出现超时错误,这样,发送端就了解到了通信双方的线路承载能力,也就确定了拥塞窗口的大小,发送方就用这个拥塞窗口的大小发送数据。要观察这个现象是非常容易的,我们一般在下载数据的时候,速度都是慢慢“冲起来的”
--
TCP的超时和重传
超时重传是TCP协议保证数据可靠性的另一个重要机制,其原理是在发送某一个数据以后就开启一个计时器,在一定时间内如果没有得到发送的数据报的ACK报文,那么就重新发送数据,直到发送成功为止。
超时
超时时间的计算是超时的核心部分,TCP要求这个算法能大致估计出当前的网络状况,虽然这确实很困难。要求精确的原因有两个:(1)定时长久会造成网络利用率不高。(2)定时太短会造成多次重传,使得网络阻塞。所以,书中给出了一套经验公式,和其他的保证计时器准确的措施。
计时器的使用
一个连接中,有且仅有一个测量定时器被使用。也就是说,如果TCP连续发出3组数据,只有一组数据会被测量。
ACK数据报不会被测量,原因很简单,没有ACK的ACK回应可以供结束定时器测量。
重传
前面曾经提到过,数据在传输的时候不能只使用一个窗口协议,我们还需要有一个拥塞窗口来控制数据的流量,使得数据不会一下子都跑到网路中引起“拥塞”。也曾经提到过,拥塞窗口最初使用指数增长的速度来增加自身的窗口,直到发生超时重传,再进行一次微调。但是没有提到,如何进行微调,拥塞避免算法和慢启动门限就是为此而生。
所谓的慢启动门限就是说,当拥塞窗口超过这个门限的时候,就使用拥塞避免算法,而在门限以内就采用慢启动算法。所以这个标准才叫做门限,通常,拥塞窗口记做cwnd,慢启动门限记做ssthresh。下面我们来看看拥塞避免和慢启动是怎么一起工作的
算法概要
对一个给定的连接,初始化cwnd为1个报文段,ssthresh为65535个字节。
TCP输出例程的输出不能超过cwnd和接收方通告窗口的大小。拥塞避免是发送方使用 的流量控制,而通告窗口则是接收方进行的流量控制。前者是发送方感受到的网络拥塞的估 计,而后者则与接收方在该连接上的可用缓存大小有关。
当拥塞发生时(超时或收到重复确认),ssthresh被设置为当前窗口大小的一半(cwnd 和接收方通告窗口大小的最小值,但最少为2个报文段)。此外,如果是超时引起了拥塞,则 cwnd被设置为1个报文段(这就是慢启动)。
当新的数据被对方确认时,就增加cwnd,但增加的方法依赖于我们是否正在进行慢启 动或拥塞避免。如果cwnd小于或等于ssthresh,则正在进行慢启动,否则正在进行拥塞避免。 慢启动一直持续到我们回到当拥塞发生时所处位置的半时候才停止(因为我们记录了在步骤2 中给我们制造麻烦的窗口大小的一半),然后转为执行拥塞避免。
快速重传和快速恢复算法
这是数据丢包的情况下给出的一种修补机制。一般来说,重传发生在超时之后,但是如果发送端接受到3个以上的重复ACK的情况下,就应该意识到,数据丢了,需要重新传递。这个机制是不需要等到重传定时器溢出的,所以叫做快速重传,而重新传递以后,因为走的不是慢启动而是拥塞避免算法,所以这又叫做快速恢复算法。流程如下:
当收到第3个重复的ACK时,将ssthresh设置为当前拥塞窗口cwnd的一半。重传丢失的 报文段。设置cwnd为ssthresh加上3倍的报文段大小。
每次收到另一个重复的ACK时, cwnd增加1个报文段大小并发送1个分组(如果新的 cwnd允许发送)。
当下一个确认新数据的ACK到达时,设置cwnd为ssthresh(在第1步中设置的值)。这个 ACK应该是在进行重传后的一个往返时间内对步骤1中重传的确认。另外,这个ACK也应该 是对丢失的分组和收到的第1个重复的ACK之间的所有中间报文段的确认。这一步采用的是拥 塞避免,因为当分组丢失时我们将当前的速率减半。
TCP的其它定时器
坚持定时器
用于防止通告窗口为0以后双方互相等待死锁的情况
坚持定时器的原理是简单的,当TCP服务器收到了客户端的0滑动窗口报文的时候,就启动一个定时器来计时,并在定时器溢出的时候向向客户端查询窗口是否已经增大,如果得到非零的窗口就重新开始发送数据,如果得到0窗口就再开一个新的定时器准备下一次查询。通过观察可以得知,TCP的坚持定时器使用1,2,4,8,16……64秒这样的普通指数退避序列来作为每一次的溢出时间。
2.保活定时器
保活定时器更加的简单,还记得FTP或者Http服务器都有Sesstion Time机制么?因为TCP是面向连接的,所以就会出现只连接不传送数据的“半开放连接”,服务器当然要检测到这种连接并且在某些情况下释放这种连接,这就是保活定时器的作用。其时限根据服务器的实现不同而不通。另外要提到的是,当其中一端如果崩溃并重新启动的情况下,如果收到该端“前生”的保活探察,则要发送一个RST数据报文帮助另一端结束连接。

⑵ 路由器的各种阈值怎么设置最合适

首先,这些值都保持默认就好,路由器厂商一般都已经选择了合理的值;第二,确实影响不大,没事折腾它大胡干啥。Beacon时槽:发送beacon帧的间隔,网卡就是通过beacon帧来扫面到SSID的,设置太大扫描的时候会反应迟钝一点;设置太小的话会对性能有一点影响,不过目前一般都用11n,5G都11ac了,这点影响应该感受不到。默认应该是100.RTS时槽:RTS的作用相当于:要发言之前喊一声“我要发言了,大家都不要说话了!”,这么形容的话很容易理解了,如果设置的太小,相当于每次说话之前都喊一声,浪费时间,没必要;设置太大,就相当于一直不喊,如果你有很多话要说的话,就可能和别人冲突到(因为你不行茄喊别人也能听到你说话,所以档仿察不一定冲突),冲突到就要重说。但目前实际干扰并不大,所以一般设成最大值。而且路由器一般都会在一次批量发送数据前发送RTS,并不是完全按照这个阈值,所以这个值的意义不大。

⑶ 问下问题~知道的朋友告诉下

RPR的简称Resilient Packet Ring弹性分组环(802.17), 从字眼我们可以看出这个技术的三个特点,
首先是Resilient(弹性的),这个比较复杂我们后面慢慢谈谈这些弹性的优点。
再次是Packet(包),这个技术基于包的传送。
最后是Ring(环),包的传送要建立在Ring这种拓扑结构上。而且是一种双环结构,每个环上最大的带宽1.25Gbit/s, 双环最大带宽2.5Gbit/s. 外环携带内环数据包的管理字节,内环携带外环的管理字节。这样,双环互为保护和备份。
我们来谈谈“弹性”带来的优点:
1、业务分级,将业务分为A,B,C3级。其中A细分为两级,B细分为两级。数据类型实际上被分为5级,每一级有不同的QoS,保证业务的区分度,分别对应实时业务,非实时业务和尽力传送。
2、拓扑自动发现,保证了对环上新增和移去的节点,动态实现拓扑结构更新。如果要增加或者减少RPR上的总带宽,则可以结合LCAS功能来实现。使用LCAS可以动态的调整带宽,而不影响原有业务。
3、空间重用,RPR单播帧在目的节点剥离的机制,实现了环上带宽的空间重用。环上带宽可以几个点的业务共用,带宽利用率提高。
4、公平算法,RPR内环和外环都支持独立的公平算法。公平算法保证了低优先级的B_EIR和C类业务在RPR环上的公平接入。通过设置公平算法的权重,可以使不同的结点具有不同的接入速率。节点可以分别在外环和内环上设置不同的权重。
5、保护:wrapping+string, wrapping相当于断纤处环回,倒换时间快,但是路径不是最优。String保护模式倒换时间慢,但选择最优路径老卖。
目前,电信业的开放和互联网的发展,致使网络与通信正以前所未有的速度迅猛发展。住宅用户和各类商业用户对带宽的要求越来越高,且业务的发展和宽带的增加之间相辅相成。从网络发展的角度看,以太网(Ethernet)因其简单性、易扩展性及其高的性价比,在局域网(LAN)中已占主导地位。超过95%的用户用以太网连接其内部网络,且正以每3-5年10倍的速度增长。10Mbit/s,100Mbit/s,和1Gbit/s的以太网已广泛应用,10Gbit/s也即将商用化。同时,在广域网(WAN)方面,基于同步数字序列(SDH)和密集波分复用(DWDM)的骨干网传输速率已达到Tbit/s。但在城域网(MSN)方面,无论是光纤分布式数字侍则逗接口(FDDI),帧中继(FR),异步传输模式(ATM),(SDH)等传输效率一般都不是很高,无法跟上LAN和WAN的发展,成为整个网络的瓶颈,严重阻碍了WAN端到端的服务潜力。同时,这些技术又是基于语音传输为基础的。虽然这些技术具有高可靠性和技术成熟等优点,但它们基于“专线”的方式,需要预先确定所需的带宽,这与数据业务突发性的特点显然是相背道的。这样,就导致了光传输带宽的浪费。许多研究表明,专线带宽的利用率不足50%,多数情况下不超过20%。其次,原来的传输多数是用点到点为基础的,而数据业务常需要点到多点的传输。这种情况下,以前者来适应后者,又必然要浪费大量的带宽。此外,从提供新业务的角度来看,由于网络下层承载技术往往需要一定时间来提供与管理,由开始计划到完成一条回路一般需要几周甚至几月的时间,这将严重阻碍新数据业务的提供。再有,从成本上考虑,显而易见,盯野目前的MAN技术也不占有任何优势。
建立良好的MAN,首先需要有一个价格合理、扩展性好的解决方案来适应不断膨胀的IP流量和光纤带宽的增长,其次要能够对各种不同的IP业务进行优化,以最少的中间电路层在分组交换网上传输IP业务。同时,还必须支持现有的传统语音业务,因为这仍是运营商的重要收入来源,且来应该在达到可接受的Qos保证时降低系统的复杂性和费用。由于MAN中存在大量的光环形网,充分利用其优点和特点更是非常必要。IP领域很早就认识到了环形网络结构的价值,发展了像令牌环,FDDI等解决方案。但这些方案都无法满足上述MAN的需要,也无法满足在拥塞情况下维持高的带宽利用率和转发量、保证节点间的平衡、迅速从节点或传输媒体故障中恢复、即可插可用等IP传输和业务传递发展需要。因此,并不适用于新一代的MAN。
为了解决上述MAN存在的问题,在城域范围内构建新的环形拓扑结构,通过传输类似以太网结构的分组来提供各种增强型业务,在不降低网络性能和可靠性的前提下提供更加经济的MAN解决方案。2000年11月,IEEE802.17工作组正式成立,目标是开发一个PRP(Resilient Packet Rings)标准,优化在MAN拓扑环上数据包的传输。该技术结合了以太网的实用性和光设备的强大功能,利用空分复用、统计复用和保护环提高了带宽的利用率,使得协议开销最小,实现了节点对网络资源的公平利用。同时,还支持业务分级(SLA)以及即插即用等特性。该技术打破了LAN与WAN的接入瓶颈,将MAN转变为快速、简单、可靠、能及时提供丰富增值业务的带宽网络,为运营商、网络服务提供商提供了一种全新、有效的MAN的城域接入网解决方案,并预计到2003年制定出最终协议标准。而目前由于国际上还未形成统一标准,还有许多问题未达成一致意见,本文以下几部分的内容综合参考了各种提案中较为一致的意见,同时也阐述了笔者在相关问题上的看法。
RPR关键技术
SONET采用了固定时隙分配技术来执行带宽分配和服务保护,以太网则依赖于以太网网桥或IP路由器来实现带宽分配管理和服务保证。这样,当使用SONET时,网络使用效率不高。当使用以太网交换机时,网络的服务质量又得不到保证。考虑到带宽市场的潜力、兼容性、技术特点、技术可行性和经济可行性等5个标准,RPR采用了以缓存器插入环(BIR)为基础的优化的MAC协议来弥补这些缺陷,提供下一代接入网所要求的恢复能力、有保证的服务质量和可管理能力。
1.网络结构与协议分层
网络拓扑基于两个反方向传输的环,相邻节点通过一对光纤连接。节点间使用光纤连接并可采用WDM进行扩容。节点具有以太网接口,可直接与路由器相联。RPR的内环和外环都作为工作信道来传送简化的SDH,或者以太网帧格式和RPR协议封装的数据帧和控制帧。从网络结构可以看出,RPR支持多播传输和点到点的连接,因此更利于数据业务的传送。此外,当发现节点网元或光纤传输失效时,RPR执行快速自动保护倒换机制,数据会在50ms内转换到无故障通路,这样就提高了网络的健壮性。
从开放式系统互联模型(OSI)出发,在总结多种协议 参考模型的基础上,给出普遍认同的RPR协议参考模型。可以看出。RPR网络必须要完成的功能包括:支持多种物理层(PHY)技术,介质访问控制(MAC)客户层处理,MAC与MAC控制技术,运行、管理、维护、与操作(OAM&P),兼容性能考虑等。其中,PHY可采用Ethernet,SDH或WDM,因此对上层也是透明的。而MAC与MAC控制技术是RPR最主要,也是最基本的功能,是标准化组织研究的重点。前者主要内容是数据传输操作控制,而后者主要包括流量控制、业务等级支持(SLA)、拓扑自动识别、保护倒换等功能。
2.基本MAC协议
RPR的基本MAC结构是一个BIR,在任何一个节点都存在3个缓存,即发送缓存、接收缓存和转发缓存。如果目的地不是本地,则通过转发缓存发出。而本节点的报文则通过发送缓存发送数据。
RPR支持空分复用技术,即传输的数据报文在目的节点而不是在源节点被取出。节点11到节点2,以节点3到节点6的报文传送是完全不影响的。这样,网络不但能为传送的报文提供最短的传输路径,且仅占用户源和目的站之间的线路,环路上的其他部分可同时供其他站点使用,因此提高了带宽的利用率。
3.流量控制
由于RPR网络资源是基于共享的,同时目的地取出报文的方式又使得环上有超过一个节点同时传送信息,这就引发了流量控制的问题。如果不进行节点接入控制,每个节点随意访问将会出现网络拥塞,增加端到端的时延和丢帧率。在极端情况下,会出现完全的“饥饿”状态,即节点的带宽完全被上游的流量所占用,而本节点流量无法接入。图4中,如果节点11流往节点8和节点8流往节点10存在的流量都比较大,节点9可以传送数据的机会就比较少。如果节点9总是被上游的流量所“覆盖”,它就会完全“饥饿”。这种情况下,就提出了所谓“公平性”性能问题,即MA应该对环上所有节点支持上层客户“公平地”接入下层介质。
任何一种公平性的具体的实现都是通过一些接入算法和一些控制信息协调实现的(如Cisco公司提出的SRP-fa等)。具体算法的选择是RPR标准化组织的主要内容之一。
4.SLA支持和带宽管理
为了适应MAN客户种类繁多、交换粒度差异大的特点,除流量控制外,RPR还必须有一套灵活的动态带宽管理和多等级承载业务SLA保证机制,以满足不同业务对传输延时、抖动、、差错率的不同要求。
虽然已提交的RPR提案中对业务等级的定义与细节描述不尽相同,但总体上看,大致可以归纳为3种:用于业务速率恒定的情况固定带宽业务,用于有承诺带宽并且允许一定突发数据的可变带宽业务,与传统IP中的业务等级类似的尽力而为的业务。数据流在进入环路时首先被分类、调度,然后根据不同的优先级标识,被放入不同的缓存区。RPR对于第一种情况一般是采用带宽预留的方式来保证其传送,而对后两种则采用了动态的带宽分配方式。这样,不但提高了带宽的利用率,同时实现了对数据突发业务的语音等其他业务的有效支持。
5.拓扑自动识别
在RPR环结构中,每个节点均有上下两个相邻节点,网络结构相当简单。正常状态下,节点间没有任何关于拓扑信息的更新。而当环初始化、新节点加入环中或需环路保护倒换时,RPR进入自动拓扑识别模式。触发器触发节点向环上的所有的节点发送第二层消息,节点可根据此消息判断有哪些节点处于环形拓扑结构中,在环的两个方向上达到其它节点需要几跳以及环上每段光纤的状态。这样,在网络运行过程中,每个节点都详细地掌握着网络的拓扑图和每条链路的状态。
基于此,网络不但实现了即插即用的特点,同时当网络发生故障时,故障点的两侧节点向其他节点广播故障消息,然后每个节点得知每个节点和每条链路的现状,这样节点可根据业务服务等级的要求进行基于源路由的业务倒换。
6.保护倒换机制
如上所述,RPR是通过正反传输方向两个光环进行组网的,这种组网方式使得RPR具有很强的健壮性。当一光环切断或某一网元失效时,RPR可通过第二层的保护机制自动为数据包切换到另一环路上,即使两个环路都失效,网络仍能工作。
保护倒换机制主要有两种:采用源路由的保护机制和采用卷绕的保护机制。采用卷绕的保护机制为,当一传输光环线路失效时,通过信令通知网络节点,在失效处两端节点处绕回。因此,业务流要先沿原路到达环回处,才被切换到另一环路去,再环回,最终达到目的节点。采用源路由的保护机制,RPR则不同。当一传输光环线路失效时,失效处两端节点会发出第二层的控制信令沿光纤方向通知各个节点。业务流源节点接受到这个信息后,立即向另一个方向的光纤上发送报文,从而实现保护倒换。同时,在保护切换时,节点会考虑业务流不同的服务等级,根据同一节点的切换原则,依次向反方向环切换业务。两种机制都能在50ms的时间里完成保护倒换功能。而基于源路由切换保护机制由于不需要“折回”,因此保护倒换时间更短,同时也更能节约带宽。
RPR特点与发展现状
综上所述,通过结合第二层简单的交换技术和现代光网络设备传输能力、带宽有效性和低的协议开销等性能,RPR体现出很多的优点。
1.带宽效率
传统的SDH网络需要环带宽的50%作为冗余,RPR则不然,它把两个反方向旋转的环都利用起来,用于传送和控制数据业务流。此外,RPR还利用目的地报文提取的方式实现了环路带宽的空间重新利用。这样,就大大提高了带宽的利用效率。
2.保护机制
RPR可以提供在故障出先后50ms时间内的自动保护倒换业务,这就与SDH的ASP相类似,为用户提供了99.999%的服务时间。此外,业务流的优先机制确保了优先级高的业务流能够得到适当的处理,以满足实时性业务的需求。
3.简单的业务提供 RPR的目标之一是分布式接入、快速保护和业务的自动重建为节点的快速插入和删除提供了即插即用机制。RPR也是一项在环内使用共享带宽的分组交换技术,每一个节点都知道环的可用容量。在传统的电路交换模式下,全网格型连接需要O(n2)个点到点连接,而RPR只需要一个与环的业务连接,这样就大大简化了工作。
此外,RPR的数据通信速率可达1-10Gbit/s。RPR网络支持SLA,可满足用户对服务等级的严格要求,支持端到端的传输服务等级。充分简化了网络层次,消除了功能上的重复性。易管理和操作,对资源和流量都采用分布式的方式进行管理,管理信息丰富。RPR还可以及时提供新服务和迅速对网络进行升级。与现有的技术,如SDH,以太网,ATM等相比,RPR无疑具有更强的优越性和更广的应用前景。
目前,虽然IEEE802.17工作组还在进行RPR标准指定和测试工作,RPR的正式商用还要在一年以后,但由于预期的良好市场前景,许多公司都已推出了不同的非标准RPR城域交换产品,以期在激烈的市场竞争中占的先机。最具代表性的产品有Cisco的DPT/SRP,Nortel网络的InterWan,以及Luminous的PacketWave等。相应地,一些大的半导体生产厂商也推出或即将推出RPRMAC层芯片,比如Vitesse与Nortel合作,推出的支持GFP的RPR芯片VSC9129,Conexant推出了CX29950RingMaker环路处理单元。但在正式标准未出台前,以上方案都属于前瞻性的技术。虽然每个供应商都承诺,一旦802.17标准出台,就改造其产品以符合802.17标准,但在规范形成前造就事实上的工业标准以影响标准的制定也是所有厂商的目的。
RPR是一种新型的网络结构和技术,是应下一代MAN的要求而设计的。RPR一经提出,便受到各方面的青睐。然而,该技术还处于早期研究与探索阶段,相关的MAC和PHY还需进一步的标准化。但是由于其集IP的智能化、以太网的经济性和光纤环网的高带宽效率和可靠于一身,业界普遍对它的市场前景表示乐观。相信随着标准化工作的进一步开展和市场的进一步扩大,RPR必将成为满足新一代带宽IP MAN所采用的最佳技术之一。
1、非梅毒螺旋体抗原血清试验:用心磷脂做抗原,检查血清中的抗心磷脂脂抗体,即反应素,属于这一类的试验的VDRL试验,USR试验及RPR(快血清反应素)试验,可作定量测定,可用于观察疗效,判断是否复发及再感染,
2、梅毒螺旋体特异性抗原血清试验:用活的或死的梅毒螺旋体或其成份来测抗螺旋体抗体,属于这一类的试验有荧光螺旋体吸收试验FTA-ABS;梅毒螺旋体血凝试验TPHA:这类试验的特异性强,可用作证实试验,但不能用作观察疗效,判断复发及再感染。
梅毒是由梅毒螺旋体引起的一种性病。感染梅毒后,人体内会产生两类抗体,类是直接针对梅毒螺旋体的抗体,另一类则是针对类脂质的抗体。针对类脂质的抗体因不直接针对梅毒螺旋体,因此无特异性,除感染梅毒外,患另外一些疾病以及生理状况的改变,体内也可能产生低滴度的抗类脂质抗体。诊断梅毒时,所做的梅毒血清学检查即检测这两类抗体。前面提到的RPR试验,即为检测类脂质抗体的实验;而TPHA则为直接检测梅毒螺旋体的实验。因RPR是检测类脂质抗体,而不是直接检测抗梅毒螺旋体抗体的实验,因而无特异性,凡能导致产生类脂质抗体的疾病,均能使RPR阳性。除梅毒外,患上呼吸道感染、肺炎、活动性肺结核、风湿性心脏病、亚急性细菌性心内膜炎、传染性肝炎、肝硬化、慢性肾炎、钩端螺旋体病、麻风、疟疾、类风湿性关节炎、系统性红斑狼疮及海洛因成瘾等,都可导致RPR阳性。
梅毒以外其他原因造成的RPR阳性有一个特点,滴度一般较低,小于1:8。RPR实验容易出现假阳性,医生常同时做特异性较强的TPHA实验来证实梅毒诊断。值得一提的是,TPHA等直接针对梅毒螺旋体的特异性实验,在一般人中也有1%的假阳性。国内曾报道某医院内科住院患者中,TPHA阳性者竟有一半是假阳性。已知可造成TPHA阳性的疾病有:类风湿性关节炎、红斑狼疮、糖尿病、结肠癌、淋巴肉瘤、丙型肝炎、肝硬化、AIDS、麻风、生殖器疱疹、海洛因成瘾等。
除疾病外,某些生理状况的改变,如妊娠,也可导致RPR及TPHA阳性。特别值得一提的是,老年人梅毒血清学检查,假阳性率较一般人高,有报道可达2%。许多老年人患常见的内科疾病,也可导致梅毒化验阳性。不久前,国内某医院报道,他们收治的5例63~80岁老年内科疾病患者,分别患冠心病、脑血管疾病、糖尿病及白血病,住院期间,均出现过RPR和TPHA阳性。
梅毒血清学检查是诊断梅毒的重要依据,但不是唯一依据。诊断梅毒,除依据化验结果外,更重要的依据是详细了解患者的生活史和既往病史,以及详细的体查。综合分析后慎重作出判断,才能避免梅毒化验结果假阳性造成的误诊

参考资料: http://ke..com/view/898392.htm?fr=ala0_1

linux /proc/net/dev里面都是什么意思

/proc目录
Linux 内核提供了一种通过 /proc 文件系统,在运行时访问内核内部数据结构、改变内核设置的机制。proc文件系统是一个伪文件系统,它只存在内存当中,而不占用外存空间。它以文件系统的方式为访问系统内核数据的操作提供接口。用户和应用程序可以通过
proc得到系统的信息,并可以改变内核的某些参数。由于系统的信息,如进程,是动态改变的,所以用户或应用程序读取proc文件时,proc文件系统是
动态从系统内核读出所需信息并提交的。下面列出的这些文件或子文件夹,并不是都是在你的系统中存在,这取决于你的内核配置和装载的模块。另外,在
/proc下还有三个很重要的目录:net,scsi和sys。
Sys目录是可写的,可以通过它来访问或修改内核的参数,而net和scsi则依赖于内核配置。例如,如果系统不支持scsi,则scsi
目录不存在。
除了以上介绍的这些,还有的是一些以数字命名的目录,它们是进程目录。系统中当前运行的每一个进程都有对应的一个目录在/proc下,以进程的 PID号为目录名,它们是读取进程信息的接口。而self目录则是读取进程本身的信息接口,是一个link。
2. 子文件或子文件夹
/proc/buddyinfo 每个内存区中的每个order有多少块可用,和内存碎片问题有关
/proc/cmdline 启动时传递给kernel的参数信息
/proc/cpuinfo cpu的信息
/proc/crypto 内核使用的所有已安装的加密密码及细节
/proc/devices 已经加载的设备并分类

/proc/dma 已注册使用的ISA DMA频道列表
/proc/execdomains Linux内核当前支持的execution domains
/proc/fb 帧缓冲设备列表,包括数量和控制它的驱动
/proc/filesystems 内核当前支持的文件系统类型
/proc/interrupts x86架构中的每个IRQ中断数
/proc/iomem 每个物理设备当前在系统内存中的映射
/proc/ioports 一个设备的输入输出所使用的注册端口范围
/proc/kcore 代表系统的物理内存,存储为核心文件格式,里边显示的是字节数,等于RAM大小加上4kb
/proc/kmsg 记录内核生成的信息,可以通过/sbin/klogd或/bin/dmesg来处理
/proc/loadavg 根据过去一段时间内CPU和IO的状态得出的负载状态,与uptime命令有关
/proc/locks 内核锁住的文件列表
/proc/mdstat 多硬盘,RAID配置信息(md=multiple disks)
/proc/meminfo RAM使用的相关信息
/proc/misc 其他的主要设备(设备号为10)上注册的驱动
/proc/moles 所有加载到内核的模块列表
/proc/mounts 系统中使用的所有挂载
/proc/mtrr 系统使用的Memory Type Range Registers (MTRRs)
/proc/partitions 分区中的块分配信息
/proc/pci 系统中的PCI设备列表
/proc/slabinfo 系统中所有活动的 slab 缓存信息
/proc/stat 所有的CPU活动信息
/proc/sysrq-trigger

使用echo命令来写这个文件的时候,远程root用户可以执行大多数的系统请求关键命令,就好像在本地终端执行一样。要写入这个文件,需要把/proc
/sys/kernel/sysrq不能设置为0。这个文件对root也是不可读的
/proc/uptime 系统已经运行了多久
/proc/swaps 交换空间的使用情况
/proc/version Linux内核版本和gcc版本
/proc/bus 系统总线(Bus)信息,例如pci/usb等
/proc/driver 驱动信息
/proc/fs 文件系统信息
/proc/ide ide设备信息
/proc/irq 中断请求设备信息
/proc/net 网卡设备信息
/proc/scsi scsi设备信息
/proc/tty tty设备信息
/proc/net/dev 显示网络适配器及统计信息
/proc/vmstat 虚拟内存统计信息
/proc/vmcore 内核panic时的内存映像
/proc/diskstats 取得磁盘信息
/proc/schedstat kernel调度器的统计信息
/proc/zoneinfo 显示内存空间的统计信息,对分析虚拟内存行为很有用
以下是/proc目录中进程N的信息
/proc/N pid为N的进程信息
/proc/N/cmdline 进程启动命令
/proc/N/cwd 链接到进程当前工作目录
/proc/N/environ 进程环境变量列表
/proc/N/exe 链接到进程的执行命令文件
/proc/N/fd 包含进程相关的所有的文件描述符
/proc/N/maps 与进程相关的内存映射信息
/proc/N/mem 指代进程持有的内存,不可读
/proc/N/root 链接到进程的根目录
/proc/N/stat 进程的状态
/proc/N/statm 进程使用的内存的状态
/proc/N/status 进程状态信息,比stat/statm更具可读性
/proc/self 链接到当前正在运行的进程

⑸ coherence缓存支持排序吗

1.2.1 分布式集群缓存
Coherence是一个分布式的缓存方案,并且通过集群为应用提供强大的缓存后备支持。Coherence主要是内存缓存,即存储区域主要在内存当中。
与一般的分布式缓存方案如JBossCache, Memcache 等相同,分布式缓存的价值基于网络IO性能高于DB查询的磁盘IO性能这样一个特点。
Coherence所有的设计都是基于多个(可以是非常多)的JVM,很多Coherence的测试都是使用几十甚至上百个节点来进行的。
下图展示了一个典型的WAS项目架构:WAS集群 + Near型Coherence集群架构。对于大型Web2.0网站(PHP或其他),集成Coherence也是类似的。

1.2.2自管理
Coherence使用的网络协议是TCMP ,是对UDP,TCP/IP的组合使用。Coherence能将启动的实例节点(Node)自动组成为集群(Cluster)。在一个局域网环境中,通过多播(Multicast)机制,第1个启动的Node能自动发现后启动的Node,第1,2个Node同样能发现之后启动的其他Node,依次类推,自动组成集群; 并且也能自动检测到死亡节点。集群各节点间通过单播(Unicast)机制进行数据复制,同步及发送通知消息。拍脊
Coherence集群以统一的逻辑试图对外提供缓存的读写接口,看起来使用Coherence Client就像在使用一个缓存一样。

1.2.3 自动容错和恢复
基于自管理的特点,一个Node挂掉后,集群能自动监测到,并做好死亡节点的数据恢复机制,客户端依然能正确的读出在死亡节点上存储的数据,容错和恢复对客户端来说是透明的。

1.2.4 分区缓存(Partitioned Cache)
这是Coherence与众不同的地方。一般集群如:JBossCache, Websphere 集群等,每余饥个Node都有数据的完整拷贝,Node间通过复制来实现数据同步和一致性,一般来说采用全复制模式,即一份数据在各节点上都有一份拷贝。这种模式下,节点要存储了较多的数据,同步复制时比较消耗网络带宽。
而Coherence的分区缓存只将一个Node上的数据在另一节点上做1个备份,有效降低复制的消耗好时间,并节省内存总需求,只需复制模式的1/N (N为缓存节点个数)。

1.2.5 线性扩展
假如你的Coherence集群已经有4个Node,当系统数据量过大引起Cache容量满员,导致缓存性能下降时,可以通过启动新的Node来扩容,改善集群的性能。
这一点也是源自分区缓存技术,集群有N个Node,每个Node只存放1/N的数据,这种设计让Coherence能够处理非常多的数据,只需要通过增加节点的数量,就可以处理更多的数据。
下图为例,当两台机器,4个存储Node不够用时,通过新增机器,新增Node实例即可自动加入集群,提升Coherence缓存性能。

线性扩展更重要体现在性能上,下图展示了,Coherence集群通过增加机器,增加Node实例使得交易耗时大幅降低,而且随着集群规竖贺返模呈线性下降。

1.2.6易用性
虽然上述特点看起来似乎很复杂,但那都是Coherence自己内部的事儿。对于客户端来说,与最简单的Map 操作一样,仅仅是 put(key,value), get(key) 等。
java代码
Java代码
<span style="font-size: small;"> NamedCache cache = CacheFactory.getCache("dist-cache");
cache.put(key, value);
Object value = cache.get(key);</span>

⑹ java web开发缓存方案,ehcache和redis哪个更好

其实没有好与不好的绝对
给你知乎上的介绍:
ehcache直接在jvm虚拟机中缓存,速度快,效率高;但是缓存共享麻烦,集群分布式应用不方便。
redis是通过socket访问到缓存服务,效率比ecache低,比数据库要快很多,处理集群和分布式缓存唯雹方便,有成熟的方案。

如果是单个应用或者对缓存访问要求很高的应用,用ehcache。
如果是大型系统,存在缓激粗存共享、分布式部署、缓存内容很大的,建议用redis。

补充下:ehcache也有缓存共享方案,不过是通过RMI或者Jgroup多播方式进行广播缓存通知更新,缓存共享复杂,维护不方便;简单的共享可以,但是涉及到缓存恢复,大数据缓存,则不合适。明山镇

python 实现udp组播

有关知识
基本概念
单播:两个主机间单对单的通信
广播:一个主机对整个局域网上所有主机上的数据通信(网络地址全1)
单播和广播是两个极端,要么对一个主机进行通信,要么对整个局域网的主机进行通信

组播:实际情况下,经常需要对一组特定的主机进行通信,而不是所有局域网上的主机
IP组播(也称多址广播或多播),是一种允许一台或多台主机发送数据包到多台主机的TCP/IP网路技术。

多播是 IPv6 数据包的 3 种基本目的地址类型之一,多播是一点对多点的通信,IPv6 没有采用 IPv4 中的组播术语,而是将广播看成是多播的一个特殊例子。

多播组只能用UDP 或者原始套接字实现,不能用TCP。

广播地址
在使用TCP/IP 协议的网络中,主机标识段host ID 为全1 的IP 地址为广播地址,广播的分组传送给host ID段所涉及的所有计算机。

传输层只有UDP可以广播 。

组播地址
IP 组播通信必须依赖于 IP 多播地址,在 IPv4 中它是一个 D 类 IP 地址,范围从 224.0.0.0 到 239.255.255.255,并被划分为局部链接多播地址、预留多播地址和管理权限多播地址3类:

局部链接多播地址范围在 224.0.0.0~224.0.0.255,这是为路由协议和其它用途保留的地址,路由器并不转发属于此范围的IP包;

预留多播地址为 224.0.1.0~238.255.255.255,可用于全球范围(如Internet)或网络协议;

管理权限多播地址为 239.0.0.0~239.255.255.255,可供组织内部使用,类似于私有 IP 地址,不能用于 Internet,可限制多播范围。

组播地址与MAC地址的映射
使用同一个 IP 多播地址接收多播数据包的所有主机构成了一个主机组,也称为多播组。一个多播组的成员是随时变动的,一台主机可以随时加入或离开多播组,多播组成员的数目和所在的地理位置也不受限制,一台主机也可以属于几个多播组。

这个我们可以这样理解,多辩宏郑播地址就类似于 QQ 群号,多播组相当于 QQ 群,一个个的主机就相当于群里面的成员。

设备驱动程序就必须接收所有多播数据帧,然后对它们进行过滤,这个过滤过程是网络驱动或IP层自动完成。(设备驱动程序会对多播数据进行过滤,将其发到相应的位置)

组播应用
单点对多点应用
点对多点应用是指一个发送者,多个接收者的应用形式,这是最常见的多播应用形式。典型的携颂应用包括:媒体广播、媒体推送、信息缓存、事件通知和状态监视等。

多点对单点应用
多点对点应用是指多个发送者,一个接收者的应用形式。通常是双向请求响应应用,任何一端(多点或点)都有可能发起请求。典型应用包括:资源查找、数据收集、网络竞拍、信息询问等。

多点对多点应用
多点对多点应用是指多个发送者和多个接收者的应用形式。通常,每个接收者可以接收多个发送者发送的数据,同时,每个发送者可以把数据发送给多个接收者。典型应用包括:多点会议、资源同步、并行处理、协同处理、远程学习、讨论组、分布式交互模拟(DIS)、多人游戏等。
参考的文章 https://www.cnblogs.com/schips/p/12552534.html

下面实现一个python(3.8)的演示原理的版本
功能:1.每个客户端随机生成一个id当做标识
2.每个客户端绑定本机一个Ip的端口(在同一台机器上面可以启动多个脚本
3. 加入同一网段的一个组播地址
4. 启动后,发送一个消息
5. 收到消息后,根据id判断绝袭消息是否是自己发出的,其它客户端的时候回一个消息

启动两个脚本以后效果如下:

ps:在相同网段可以很容易实现组播。跨网段组播必须打开三层交换机的组播路由协议,一般是PIM 稀疏模式,一般三层交换机的默认配置是没有打开组播路由的。(待实践)

⑻ 数据链路层(二)

广播信道可以进行一对多的通信,因此使用广播信道的局域网被称为共享式局域网。现在具有更高性能的使用点对点链路和链路交换机的交换式局迅培域网在有线领域已完全取代了共享式局域网。但无线局域网仍然使用的是共享亩唤唯媒体技术。

使用广播信道连接多个站点,必须解决如果同时有两个以上的站点在发送数据时共享信道上的信号冲突的问题。因此共享信道要着重考虑的一个问题就是如何协调多个发送和接收站点对一个共享传输媒体的占用,即媒体访问/接入控制(MAC) Medium Access Control 或 多点接入、多址访问 Multiple Access,媒体接入控制技术主要分为以下两大类:

局域网最主要的特点是: 网络为一个单位所拥有,且地理范围和站点数目均有限。
局域网具有如下的一些主要优点:
1、具有广播功能,从一个站点可很方便地访问全网。局域网上的主机可共享连接在局域网上的各种硬件和软件资源。
2、便于系统的扩展和逐渐地演变,各设备的位置可灵活调整和改变。
3、提高了系统的可靠性、可用性和残存性。

现在以太网已经在局域网市场上占据了绝对优势,双绞线是局域网中的主流传输媒体,数据率很高时则使用光纤。
为了使数据链路层能更好地适应多种局域网标准,802 委员会就将局域网的数据链路层拆成两个子层:
1、逻辑链路控制 LLC (Logical Link Control)子层
2、媒体接入控制 MAC (Medium Access Control)子层。

与接入到传输媒体有关的内容都放在 MAC子层,而 LLC 子层则与传输媒体无关,不管采用何种协议的局域网对 LLC 子层来说都是透明的

由于 TCP/IP 体系经常使用的局域网是 DIX Ethernet V2 而不是 802.3 标准中的几种局域网,因此现在 802 委员会制定的逻辑链路控制子层 LLC(即 802.2 标准)的作用已经不大了。
很多厂商生产的适配器上就仅装有 MAC 协议而没有 LLC 协议。

网络接口板又称为通信适配器(adapter)或网络接口卡 NIC (Network Interface Card),或“网卡”。
适配器的重要功能:
1、进行串行/并行转换。
2、对数据进行缓存。
3、在计算机的操作系统安装设备驱动程序。
4、实现以太网协议。

以太网采用的协调方式即使用一种特殊协议CSMA/CD,即 载波监听多点接入/碰撞检测 ,全称为Carrier Sense Multiple Access with Collision Detection。

重要特性:使用 CSMA/CD 协议的以太网不能进行全双工通信而只能进行 双向交替通信(半双工通信)
每个站在发送数据之后的一小段时间内,存在着遭遇碰撞的可能性。
这种发送的不确定性使整个以太网的平链握均通信量远小于以太网的最高数据率。
最先发送数据帧的站,在发送数据帧后至多经过时间 2τ(两倍的端到端往返时延)就可知道发送的数据帧是否遭受了碰撞。
以太网的端到端往返时延 2τ 称为 争用期 ,或碰撞窗口。
经过争用期这段时间还没有检测到碰撞,才能肯定这次发送不会发生碰撞。

最短有效帧长 : 如果发生冲突,就一定是在发送的前 64 字节之内
由于一检测到冲突就立即中止发送,这时已经发送出去的数据一定小于 64 字节。
以太网规定了最短有效帧长为 64 字节,凡长度小于 64 字节的帧都是由于冲突而异常中止的无效帧。
因此, 如果发送的帧太短,有可能检测不到发生的碰撞

强化碰撞:当发送数据的站一旦发现发生了碰撞时,立即停止发送数据;
再继续发送若干比特的人为干扰信号(jamming signal),以便让所有用户都知道现在已经发生了碰撞。

传统以太网采用星形拓扑,在星形的中心则增加了一种可靠性非常高的设备,叫做集线器(hub) ,每个站需要用两对无屏蔽双绞线,分别用于发送和接收。

1990年,IEEE制定出星形以太网10BASE-T 的标准802.3i。10BASE-T 的通信距离稍短,每个站到集线器的距离不超过 100 m。
10BASE-T 双绞线以太网的出现,是局域网发展史上的一个非常重要的里程碑,它为以太网在局域网中的统治地位奠定了牢固的基础。 它的一些特点如下:

在使用点对点信道的数据链路中不需要使用地址,而当多个站点连接在同一个广播信道上想要实现两个站点的通信则每个站点就要有唯一的标识,即一个 数据链路层地址 ,在每个发送的帧中必须携带标识接受站点和发送站点的地址,由于该地址用于媒体接入控制,因此称为MAC地址,在局域网中,称为硬件地址或物理地址。

IEEE 的注册管理机构 RA 负责向厂家分配地址字段的前三个字节(即高位 24 位)。
地址字段中的后三个字节(即低位 24 位)由厂家自行指派,称为扩展标识符,必须保证生产出的适配器没有重复地址。
一个地址块可以生成2^24个不同的地址。这种 48 位地址称为 MAC-48,它的通用名称是EUI-48。“MAC地址”实际上就是适配器地址或适配器标识符EUI-48。

适配器从网络上每收到一个 MAC 帧就首先用硬件检查 MAC 帧中的 MAC 地址.如果是发往本站的帧则收下,然后再进行其他的处理。否则就将此帧丢弃,不再进行其他的处理。
“发往本站的帧”包括以下三种帧:
1、单播(unicast)帧(一对一)
2、广播(broadcast)帧(一对全体)
3、多播(multicast)帧(一对多)

常用的以太网MAC帧格式有两种标准 :
1、DIX Ethernet V2 标准 (最常用,下文介绍这种帧)
2、IEEE 的 802.3 标准

无效的 MAC 帧 :
1、帧的长度不是整数个字节;
2、用收到的帧检验序列 FCS 查出有差错;
3、数据字段的长度不在 46 ~ 1500 字节之间。
4、有效的 MAC 帧长度为 64 ~ 1518 字节之间。
5、对于检查出的无效 MAC 帧就简单地丢弃。以太网不负责重传丢弃的帧。

在数据链路层扩展局域网是使用 网桥
网桥工作在数据链路层,它根据 MAC 帧的目的地址对收到的帧进行转发。
网桥具有 过滤帧 的功能。当网桥收到一个帧时,并不是向所有的接口转发此帧,而是先检查此帧的目的 MAC 地址,然后再确定将该帧转发到哪一个接口

目前使用得最多的网桥是 透明网桥(transparent bridge)
“透明”是指局域网上的站点并不知道所发送的帧将经过哪几个网桥,因为网桥对各站来说是看不见的。 透明网桥是一种即插即用设备,其标准是 IEEE 802.1D

透明网桥使用了 生成树算法 :这是为了避免产生转发的帧在网络中不断地兜圈子

1、源路由(source route)网桥在发送帧时将详细的路由信息放在帧的首部中。
2、源站以广播方式向欲通信的目的站发送一个发现帧,每个发现帧都记录所经过的路由。
3、发现帧到达目的站时就沿各自的路由返回源站。源站在得知这些路由后,从所有可能的路由中选择出一个最佳路由。凡从该源站向该目的站发送的帧的首部,都必须携带源站所确定的这一路由信息。

1990 年问世的交换式集线器(switching hub),可明显地提高局域网的性能。交换式集线器常称为以太网交换机(switch)或第二层交换机(表明此交换机工作在数据链路层)。以太网交换机通常都有十几个接口。因此,以太网交换机实质上就是一个多接口的网桥,可见交换机工作在 数据链路层

虚拟局域网 VLAN 是由一些局域网网段构成的与物理位置无关的逻辑组。这些网段具有某些共同的需求。
每一个 VLAN 的帧都有一个明确的标识符,指明发送这个帧的工作站是属于哪一个 VLAN。虚拟局域网其实只是局域网给用户提供的一种服务,而并不是一种新型局域网。

1、当 B1 向 VLAN2 工作组内成员发送数据时,工作站 B2 和 B3 将会收到广播的信息。
2、B1 发送数据时,工作站 A1, A2 和 C1都不会收到 B1 发出的广播信息。
3、虚拟局域网限制了接收广播信息的工作站数,使得网络不会因传播过多的广播信息(即“广播风暴”)而引起性能恶化。

虚拟局域网协议允许在以太网的帧格式中插入一个 4 字节的标识符,称为 VLAN 标记(tag),用来指明发送该帧的工作站属于哪一个虚拟局域网。

速率达到或超过 100 Mb/s 的以太网称为高速以太网。
在双绞线上传送 100 Mb/s 基带信号的星型拓扑以太网,仍使用 IEEE 802.3 的CSMA/CD 协议。100BASE-T 以太网又称为快速以太网(Fast Ethernet)。
1、可在全双工方式下工作而无冲突发生。因此,不使用 CSMA/CD 协议。
2、MAC 帧格式仍然是 802.3 标准规定的。
3、保持最短帧长不变,但将一个网段的最大电缆长度减小到 100 m。
4、帧间时间间隔从原来的 9.6 μs 改为现在的 0.96 μs。

允许在 1 Gb/s 下全双工和半双工两种方式工作。使用 802.3 协议规定的帧格式。
在半双工方式下使用 CSMA/CD 协议(全双工方式不需要使用 CSMA/CD 协议)。
与 10BASE-T 和 100BASE-T 技术向后兼容。

全双工方式:当吉比特以太网工作在全双工方式时(即通信双方可同时进行发送和接收数据),不使用载波延伸和分组突发。

10 吉比特以太网与 10 Mb/s,100 Mb/s 和 1 Gb/s 以太网的帧格式完全相同。
10 吉比特以太网还保留了 802.3 标准规定的以太网最小和最大帧长,便于升级。
10 吉比特以太网不再使用铜线而只使用光纤作为传输媒体。
10 吉比特以太网只工作在全双工方式,因此没有争用问题,也不使用 CSMA/CD 协议

局域网物理层 LAN PHY。局域网物理层的数据率是 10.000 Gb/s。
可选的广域网物理层 WAN PHY。广域网物理层具有另一种数据率,这是为了和所谓的“Gb/s”的 SONET/SDH(即OC-192/STM-64)相连接。
(为了使 10 吉比特以太网的帧能够插入到 OC-192/STM-64 帧的有效载荷中,就要使用可选的广域网物理层,其数据率为 9.95328 Gb/s。)

以太网已成功地把速率提高到 1 ~ 10 Gb/s ,所覆盖的地理范围也扩展到了城域网和广域网,因此现在人们正在尝试使用以太网进行宽带接入。
以太网接入的重要特点是它可提供双向的宽带通信,并且可根据用户对带宽的需求灵活地进行带宽升级。
采用以太网接入可实现端到端的以太网传输,中间不需要再进行帧格式的转换。这就提高了数据的传输效率和降低了传输的成本。

⑼ linux下配置网络连接

linux 命令配置网络连接首先,先了解传统的网络设置命令:
1. 使用ifconfig命令设置并查看网络接口情况
示例1: 设置eth0的IP,同时激活设备:
# ifconfig eth0 192.168.4.1 netmask 255.255.255.0 up
示例2: 设置eth0别名设备 eth0:1 的IP,并添加路由
# ifconfig eth0:1 192.168.4.2
# route add ?host 192.168.4.2 dev eth0:1
示例3:激活(禁用)设备
# ifconfig eth0:1 up(down)
示例4:查看所有(指定)网络接口设置
# ifconfig (eth0)
2. 使用route 命令设置路由表
示例1:添加到主机路由
# route add ?host 192.168.4.2 dev eth0:1
# route add ?host 192.168.4.1 gw 192.168.4.250
示例2:添加到网络的路由
# route add ?net IP netmask MASK eth0
# route add ?net IP netmask MASK gw IP
# route add ?net IP/24 eth1
示例3:添加默认网关
# route add default gw IP
示例4:删除路由
# route del ?host 192.168.4.1 dev eth0:1
示例5:查看路由信息
# route 或 route -n (-n 表示不解析名字,列出速度会比route 快)
3.ARP 管理命令
示例1:查看ARP缓存
# arp
示例2: 添加
# arp ?s IP MAC
示例3: 删除
# arp ?d IP
4. ip是iproute2软件包里面的一个强大的网络设置工具,他能够替代一些传统的网络管理工具。例如:ifconfig、route等,
上面的示例完万能用下面的ip命令实现,而且ip命令能实现更多的功能.下面介绍一些示例:
4.0 ip命令的语法
ip命令的用法如下:
ip [OPTIONS] OBJECT [COMMAND [ARGUMENTS]]
4.1 ip link set--改动设备的属性. 缩写:set、s
示例1:up/down 起动/关闭设备。
# ip link set dev eth0 up
这个等于传统的 # ifconfig eth0 up(down)
示例2:改动设备传输队列的长度。
参数:txqueuelen NUMBER或txqlen NUMBER
# ip link set dev eth0 txqueuelen 100
示例3:改动网络设备MTU(最大传输单元)的值。
# ip link set dev eth0 mtu 1500
示例4: 修改网络设备的MAC地址。
参数: address LLADDRESS
# ip link set dev eth0 address 00:01:4f:00:15:f1
4.2 ip link show--显示设备属性. 缩写:show、list、lst、sh、ls、l
-s选项出现两次或更多次,ip会输出更为周详的错误信息统计。
示例:
# ip -s -s link ls eth0
eth0: mtu 1500 qdisc cbq qlen 100
link/ether 00:a0:cc:66:18:78 brd ff:ff:ff:ff:ff:ff
RX: bytes packets errors dropped overrun mcast
2449949362 2786187 0 0 0 0
RX errors: length crc frame fifo missed
0 0 0 0 0
TX: bytes packets errors dropped carrier collsns
178558497 1783946 332 0 332 35172
TX errors: aborted fifo window heartbeat
0 0 0 332
这个命令等于传统的 ifconfig eth0
5.1 ip address add--添加一个新的协议地址. 缩写:add、a
示例1:为每个地址设置一个字符串作为标签。为了和Linux-2.0的网络别名兼容,这个字符串必须以设备名开头,接着一个冒号,
# ip addr add local 192.168.4.1/28 brd + label eth0:1 dev eth0
示例2: 在以太网接口eth0上增加一个地址192.168.20.0,掩码长度为24位(155.155.155.0),标准广播地址,标签为eth0:Alias:
# ip addr add 192.168.4.2/24 brd + dev eth1 label eth1:1
这个命令等于传统的: ifconfig eth1:1 192.168.4.2
5.2 ip address delete--删除一个协议地址. 缩写:delete、del、d
# ip addr del 192.168.4.1/24 brd + dev eth0 label eth0:Alias1
5.3 ip address show--显示协议地址. 缩写:show、list、lst、sh、ls、l
# ip addr ls eth0
5.4.ip address flush--清除协议地址. 缩写:flush、f
示例1 : 删除属于私网10.0.0.0/8的所有地址:
# ip -s -s a f to 10/8
示例2 : 取消所有以太网卡的IP地址
# ip -4 addr flush label "eth0"
6. ip neighbour--neighbour/arp表管理命令
缩写 neighbour、neighbor、neigh、n
命令 add、change、replace、delete、fulsh、show(或list)
6.1 ip neighbour add -- 添加一个新的邻接条目
ip neighbour change--修改一个现有的条目
ip neighbour replace--替换一个已有的条目
缩写:add、a;change、chg;replace、repl
示例1: 在设备eth0上,为地址10.0.0.3添加一个permanent ARP条目:
# ip neigh add 10.0.0.3 lladdr 0:0:0:0:0:1 dev eth0 nud perm
示例2:把状态改为reachable
# ip neigh chg 10.0.0.3 dev eth0 nud reachable
6.2.ip neighbour delete--删除一个邻接条目
示例1:删除设备eth0上的一个ARP条目10.0.0.3
# ip neigh del 10.0.0.3 dev eth0
6.3.ip neighbour show--显示网络邻居的信息. 缩写:show、list、sh、ls
示例1: # ip -s n ls 193.233.7.254
193.233.7.254. dev eth0 lladdr 00:00:0c:76:3f:85 ref 5 used 12/13/20 nud reachable
6.4.ip neighbour flush--清除邻接条目. 缩写:flush、f
示例1: (-s 能显示周详信息)
# ip -s -s n f 193.233.7.254
7. 路由表管理
7.1.缩写 route、ro、r
7.5.路由表
从Linux-2.2开始,内核把路由归纳到许多路由表中,这些表都进行了编号,编号数字的范围是1到255。另外,
为了方便,还能在/etc/iproute2/rt_tables中为路由表命名。
默认情况下,所有的路由都会被插入到表main(编号254)中。在进行路由查询时,内核只使用路由表main。
7.6.ip route add -- 添加新路由
ip route change -- 修改路由
ip route replace -- 替换已有的路由
缩写:add、a;change、chg;replace、repl
示例1: 设置到网络10.0.0/24的路由经过网关193.233.7.65
# ip route add 10.0.0/24 via 193.233.7.65
示例2: 修改到网络10.0.0/24的直接路由,使其经过设备mmy
# ip route chg 10.0.0/24 dev mmy
示例3: 实现链路负载平衡.加入缺省多路径路由,让ppp0和ppp1分担负载(注意:scope值并非必需,他只不过是告诉内核,
这个路由要经过网关而不是直连的。实际上,如果你知道远程端点的地址,使用via参数来设置就更好了)。
# ip route add default scope global nexthop dev ppp0 nexthop dev ppp1
# ip route replace default scope global nexthop dev ppp0 nexthop dev ppp1
示例4: 设置NAT路由。在转发来自192.203.80.144的数据包之前,先进行网络地址转换,把这个地址转换为193.233.7.83
# ip route add nat 192.203.80.142 via 193.233.7.83
示例5: 实现数据包级负载平衡,允许把数据包随机从多个路由发出。weight 能设置权重.
# ip route replace default equalize nexthop via 211.139.218.145 dev eth0 weight 1 nexthop via 211.139.218.145 dev eth1 weight 1
7.7.ip route delete-- 删除路由
缩写:delete、del、d
示例1:删除上一节命令加入的多路径路由
# ip route del default scope global nexthop dev ppp0 nexthop dev ppp1
7.8.ip route show -- 列出路由
缩写:show、list、sh、ls、l
示例1: 计算使用gated/bgp协议的路由个数
# ip route ls proto gated/bgp |wc
1413 9891 79010
示例2: 计算路由缓存里面的条数,由于被缓存路由的属性可能大于一行,以此需要使用-o选项
# ip -o route ls cloned |wc
159 2543 18707
示例3: 列出路由表TABLEID里面的路由。缺省设置是table main。TABLEID或是个真正的路由表ID或是/etc/iproute2/rt_tables文件定义的字符串,
或是以下的特别值:
all -- 列出所有表的路由;
cache -- 列出路由缓存的内容。
ip ro ls 193.233.7.82 tab cache
示例4: 列出某个路由表的内容
# ip route ls table fddi153
示例5: 列出默认路由表的内容
# ip route ls
这个命令等于传统的: route
7.9.ip route flush -- 擦除路由表
示例1: 删除路由表main中的所有网关路由(示例:在路由监视程式挂掉之后):
# ip -4 ro flush scope global type unicast
示例2:清除所有被克隆出来的IPv6路由:
# ip -6 -s -s ro flush cache
示例3: 在gated程式挂掉之后,清除所有的BGP路由:
# ip -s ro f proto gated/bgp
示例4: 清除所有ipv4路由cache
# ip route flush cache
*** IPv4 routing cache is flushed.
7.10 ip route get -- 获得单个路由 .缩写:get、g
使用这个命令能获得到达目的地址的一个路由及他的确切内容。
ip route get命令和ip route show命令执行的操作是不同的。ip route show命令只是显示现有的路由,而ip route get命令在必要时会派生出新的路由。
示例1: 搜索到193.233.7.82的路由
# ip route get 193.233.7.82
193.233.7.82 dev eth0 src 193.233.7.65 realms inr.ac cache mtu 1500 rtt 300
示例2: 搜索目的地址是193.233.7.82,来自193.233.7.82,从eth0设备到达的路由(这条命令会产生一条非常有意思的路由,这是一条到193.233.7.82的回环路由)
# ip r g 193.233.7.82 from 193.233.7.82 iif eth0
193.233.7.82 from 193.233.7.82 dev eth0 src 193.233.7.65 realms inr.ac/inr.ac
cache mtu 1500 rtt 300 iif eth0
8. ip route -- 路由策略数据库管理命令
命令add、delete、show(或list)
注意:策略路由(policy routing)不等于路由策略(rouing policy)。
在某些情况下,我们不只是需要通过数据包的目的地址决定路由,可能还需要通过其他一些域:源地址、IP协议、传输层端口甚至数据包的负载。
这就叫做:策略路由(policy routing)。
8.5. ip rule add -- 插入新的规则
ip rule delete -- 删除规则
缩写:add、a;delete、del、d
示例1: 通过路由表inr.ruhep路由来自源地址为192.203.80/24的数据包
ip ru add from 192.203.80/24 table inr.ruhep prio 220
示例2:把源地址为193.233.7.83的数据报的源地址转换为192.203.80.144,并通过表1进行路由
ip ru add from 193.233.7.83 nat 192.203.80.144 table 1 prio 320
示例3:删除无用的缺省规则
ip ru del prio 32767
8.7. ip rule show -- 列出路由规则
缩写:show、list、sh、ls、l
示例1: # ip ru ls
0: from all lookup local
32762: from 192.168.4.89 lookup fddi153
32764: from 192.168.4.88 lookup fddi153
32766: from all lookup main
32767: from all lookup 253
9. ip maddress -- 多播地址管理
缩写:show、list、sh、ls、l
9.3.ip maddress show -- 列出多播地址
示例1: # ip maddr ls mmy
9.4. ip maddress add -- 加入多播地址
ip maddress delete -- 删除多播地址
缩写:add、a;delete、del、d
使用这两个命令,我们能添加/删除在网络接口上监听的链路层多播地址。这个命令只能管理链路层地址。
示例1: 增加 # ip maddr add 33:33:00:00:00:01 dev mmy
示例2: 查看 # ip -O maddr ls mmy
2: mmy
link 33:33:00:00:00:01 users 2 static
link 01:00:5e:00:00:01
示例3: 删除 # ip maddr del 33:33:00:00:00:01 dev mmy
10.ip mroute -- 多播路由缓存管理
10.4. ip mroute show -- 列出多播路由缓存条目
缩写:show、list、sh、ls、l
示例1:查看 # ip mroute ls
(193.232.127.6, 224.0.1.39) Iif: unresolved
(193.232.244.34, 224.0.1.40) Iif: unresolved
(193.233.7.65, 224.66.66.66) Iif: eth0 Oifs: pimreg
示例2:查看 # ip -s mr ls 224.66/16
(193.233.7.65, 224.66.66.66) Iif: eth0 Oifs: pimreg
9383 packets, 300256 bytes
11. ip tunnel -- 通道设置
缩写tunnel、tunl
11.4.ip tunnel add -- 添加新的通道
ip tunnel change -- 修改现有的通道
ip tunnel delete -- 删除一个通道
缩写:add、a;change、chg;delete、del、d
示例1:建立一个点对点通道,最大TTL是32
# ip tunnel add Cisco mode sit remote 192.31.7.104 local 192.203.80.1 ttl 32
11.4.ip tunnel show -- 列出现有的通道
缩写:show、list、sh、ls、l
示例1: # ip -s tunl ls Cisco
12. ip monitor和rtmon -- 状态监视
ip命令能用于连续地监视设备、地址和路由的状态。这个命令选项的格式有点不同,命令选项的名字叫做monitor,接着是操作对象:
ip monitor [ file FILE ] [ all | OBJECT-LIST ]
示例1: # rtmon file /var/log/rtmon.log
示例2: # ip monitor file /var/log/rtmon.log r

热点内容
jdk源码怎么看 发布:2024-05-07 20:18:22 浏览:517
编程c语言自学书 发布:2024-05-07 20:12:03 浏览:421
usb大容量存储驱动 发布:2024-05-07 19:02:01 浏览:815
红米1s没有存储空间 发布:2024-05-07 18:59:09 浏览:505
妖云解压密码 发布:2024-05-07 18:50:08 浏览:1002
sql语句等于怎么写 发布:2024-05-07 18:05:46 浏览:816
我的世界电脑版第三方服务器大全 发布:2024-05-07 18:00:46 浏览:627
主服务器的ip地址 发布:2024-05-07 17:58:50 浏览:546
组服务器打电脑游戏 发布:2024-05-07 17:46:19 浏览:866
java的文件路径 发布:2024-05-07 16:55:29 浏览:293