摘要:
\c忽略大小写\C强制区分大小写\v除了_、字母、数字以为的所有字符都当做具有特殊含义的字符\V只有反斜杠有特殊含义%s///gn统计某个词出现的次数替换的flagg全局范围执行,及一行中所有,而不是仅仅第一处c确认或拒绝每一次修改n抑制正常的替换行为,只报告匹配的个数&重用上次用过的flag 阅读全文
摘要:
一、引言对于每个TCP连接,TCP管理4个不同的定时器 重传定时器用于当希望收到另一端的确认。坚持 (persist) 定时器使窗口大小信息保持不断流动,即使另一端关闭了其接收窗口。保活 (keepalive) 定时器可检测到一个空闲连接的另一端何时崩溃或重启。2MSL定时器测量一个连接处于TIME_WAIT状态的时间。二、往返时间测量TCP超时与重传中最重要的一部分是对一个给定连接,如何测量往... 阅读全文
摘要:
TCP使用滑动窗口协议的另一种方式来实现流量控制。该协议允许发送方在停止并等待确认之前可以连续发送多个分组。由于发送方不必每发送一个分组就停下来等确认,因此该协议可以加速数据的传输。 一、滑动窗口 接收方通告的窗口称之为提供的窗口 (offered window) 。当接收方确认数据以后,这个滑动窗口不时向右移动。 称窗口左边沿向右边沿靠近为窗口合拢 (close)。发生在发送的数据被... 阅读全文
摘要:
两类数据通过TCP传输,交互数据流与块数据。TCP需要同时处理这两类数据,但使用的处理算法有所不同。本文介绍交互数据的传输过程。 一、经受时延的确认通常TCP在接收到数据时并不立即发送ACK,而是推迟发送,以便将ACK和需要沿该方向发送的数据一起发送(有时称之为数据捎带ACK)。绝大多数采用时延是200ms,也就是说TCP将以200ms的时延等待是否有数据一起发送。 如上图,ack2和ack... 阅读全文
摘要:
一、TCP连接建立(正常情况)三次握手 (three-way handshake) 请求端发送一个SYN段指明客户端打算建立连接的服务器端口,以及初始序号 (ISN)服务器发回包含服务器的初始序号的SYN报文段作为应答。同时,将确认序号设置为客户端的ISN加1以对客户的SYN报文段加以确认。一个SYN将占用一个序号。客户端将确认序号设置为服务器的ISN加1以对服务器的SYN报文段进行确认。发送第... 阅读全文
摘要:
一、TCP提供的服务TCP提供面向连接、可靠的字节流服务。 面向连接使用两个TCP的应用在彼此交换数据之前必须建立一个TCP连接。仅有双方可以彼此通信,广播和多播不能用于TCP。可靠利用下面技术保证可靠性应用数据被分隔为TCP认为最适合发送的数据块定时及重传机制收到以后发送确认首部保持端到端的校验和TCP会处理IP层的乱序TCP会丢弃IP层的重复包TCP提供了流量控制字节流两个应用程序通过TCP... 阅读全文
摘要:
一、引言 UDP是简单的面向数据报的运输层协议。UDP不提供可靠性:它负责把应用程序传给IP层的数据发送出去,不保证能导到目的地。 二、UDP首部 端口号表示发送进程和接受进程。由于IP层已经把IP数据报分配给了TCP和UDP,因此TCP和UDP端口号是相互独立的。UDP长度字段指的是UDP首部和UDP数据的自己长度。 三、IP分片由于物理网络层一般要限制每次发送数据帧的最大长度,因此... 阅读全文
摘要:
一、IP层工作流程 二、 简单路由表输入netstate -rn,得到如下 其中flag的标志如下 U 该路由可以使用G 该路由是到一个网管(路由器),否则,说明目的地是直接相连的该标志区分了间接路由和直接路由。区别在于,发往直接路由的分组中不但具有指明的端的IP地址,还具有其链路层地址。当分组被发往一个间接路由时,IP地址指明的是最终目的地,而链路层地址指明的是网关(下一条路由器)。H ... 阅读全文
摘要:
一、原理Traceroute发送一份UDP数据报给目的主机,但它选择一个不可能的值作为UDP端口号,使得目的主机的任何一个应用程序都不可能使用该端口。起始时,数据报的TTL字段是1,然后每次把TTl字段依次加1,以确定路径中的每个路由器。每个路由器在丢弃的UDP数据报时都返回一个ICMP超时报文,而最终主机产生一个ICMP端口不可达的报文。 二、ICMP超时报文格式三、Traceroute程序... 阅读全文