摘要:一、UCA 简介 Unicode Collation Algorithm (UCA) 是 Unicode 规定的如何比较两个字符串大小的算法,也是事实上的标准。我们先来看下它的几个特征。 1.1 Multi-Level Comparison 为了处理字符串比较的复杂性,UCA 采用了多级比较的方法。
阅读全文
摘要:一、一个具体的例子引发的问题 当今是国际化的时代,多种语言可能同时显示在屏幕上。比如一个人可能喜欢听华语歌、英文歌、韩文歌和日语歌,又比如他的联系人中有中国人、英国人、日本人、韩国人以及有英文名字的中国人。 在这种情况下,他的手机上需要维护一个列表,每一项可能是中文、韩文、英文和日文。在许多情况下需
阅读全文
摘要:机密性 (confidentiality)仅有发送方和希望的接收方能理解传输报文的内容。报文完整性 (message integrity)通信的内容在传输过程中未被改变——或者恶意篡改或意外改动。端点鉴别 (end-point authentication)发送方和接收方都应能证实通信过程所涉及的另一方,以确信另一方具有他们所声称的身份。运行安全性 (operational security)
阅读全文
摘要:一、音视频的性质高比特率可以被压缩对于视频来说,可以利用空间冗余和时域冗余。可以生成多重版本尽管音频比特率比视频比特率小得多,但是人们对音频的小失误更加敏感。二、多媒体应用的类型流式存储音频和视频如YouTube、优酷等。最重要的性能测量是平均吞吐量。流式播放用户正从视频的一个位置播放时,正从服务器接收后续部分。相互作用播放过程中,可以进行暂停、快进等操作。可接受的响应时间应该小于几秒。连续播放...
阅读全文
摘要:在总线拓扑和基于集线器的星形拓扑技术时代,以太网显然是一种广播链路。为了处理这些碰撞,以太网标准包括了 CSMA/CD 协议。今天广为使用的以太网是基于交换机的星形拓扑,采用的是存储转发分组交换。在基于交换机的以太局域网中,不会有碰撞,因此没有必要使用 MAC 协议了!交换机自身对子网中的主机和路由器是透明的 (transparent),即某主机/路由器向另一个主机/路由器寻址一个帧,而不是向交换...
阅读全文
摘要:一、 MAC 地址不是主机或路由器具有链路层地址,而是它们的适配器(即网络接口)具有链路层地址。因此,具有多个网络接口的主机或路由器将具有与之相关联的多个链路层地址。然而,链路层交换机并不具有与它们接口相关联的链路层地址。这是因为链路层交换机的任务是在主机与路由器之间承载数据报;交换机透明地执行该项任务,也就是说,主机或路由器不必明确地将帧寻址到其间的交换机。尽管 MAC 地址被设计为永久的,但...
阅读全文
摘要:一、 一些术语运行链路层协议的任何设备均称为结点 (node)。沿着通信路径连接相邻结点的通信信道称为链路 (link)。 二、两种链路层信道广播信道用于连接有线局域网、卫星网和混合光纤同轴电缆接入网中的多台主机。需要媒体访问协议来协调帧传输。点对点通信链路在诸如长距离链路连接的两台路由器之间,或用户办公室主机与它们所连接的临近以太网交换机之间等场合。三、链路层提供的服务成帧 (frami...
阅读全文
摘要:一、 IPv5 哪里去了?本来预计 ST-2 会成为 IPv5,后来 ST-2 被舍弃了。二、和IPv4的区别扩大的地址容量IP 地址从 32 bit 增加到 128 bit。进入了任播地址 (anycast address),可以把数据报交付给一组主机中的任意一个。简化高效的 40 字节首部许多 IPv4 字段被舍弃或作为选项。定长的首部运行更快处理 IP 数据报。分片/重新组装IPv6 不允许...
阅读全文
摘要:NAT, Network Address Translation 一、专用 IP 地址例如 10.0.0.0/8。根据 RFC 1918,这个地址空间是保留的 3 部分 IP 地址空间之一。这些地址用于专用网络或具有专用地址的地域 (realm)。具有专用地址的地域是指其地址仅对该网络中的设备有意义的网络。 二、NAT例子 NAT 路由器对外界的行为就如同一个具有单一 IP 地址的单一设...
阅读全文
摘要:动态主机配置协议,Dynamic Host ConfigurationDHCP 允许主机自动获得一个 IP 地址。网络管理员能配置 DHCP,以使某给定主机每次与网络连接时能得到一个相同的 IP 地址,或者某主机将会被分配一个临时的 IP 地址,该地址在每次与网络连接时也许是不同的。 一、 DHCP 服务器DHCP 是一个客户- 服务器协议。客户通常是新到达的主机。最简单情况下,每个子网有一台 ...
阅读全文
摘要: 输入端口把一条输入的物理链路与路由器连接的物理层功能与位于入链路远端的数据链路层交互的数据链路层功能在输入端口完成查找功能 。通过查询转发表决定路由器的输出端口控制分组从输入端口转发到路由选择处理器交换结构将路由的输入端口与输出端口相连接输出端口从交换结构接收分组,并通过执行必要的链路层和物理层功能在输出链路上传输这些分组路由选择处理器执行路由选择协议,维护路由选择表以及连接的链路状态...
阅读全文
摘要:forwarding转发。当一个分组到达路由器的一条输入链路时,路由器必须将该分组移动到适当的输出链路。routing路由选择。当分组从发送方流向接收方时,网络层必须决定这些分组所采用的路由或路径。每台路由器具有一张转发表 (forwarding table)。路由器通过检查到达分组首部字段的值来转发分组。
阅读全文
摘要:在 TCP 三次握手中,服务器为了响应一个收到的 SYN,分配并初始化连接变量和缓存。然后服务器发送一个 SYNACK 进行相应,并等待来自客户的 ACK 报文段。如果某客户不发送 ACK 来完成三次握手的第三步,最终服务器将终止该半开连接并回收资源。这种 TCP 连接管理协议为经典的 Dos 攻击即 SYN 洪泛攻击提供了环境。在这种攻击中,供给者发送大量的 TCP SYN 报文段,而不完成第三...
阅读全文
摘要:一、 停止等待 (stop-and-wait) 协议的低带宽利用率举一个例子来说明。假设两个主机分布在美国东西海岸,他们之间的光速传播往返时延 RTT 大约是30毫秒。这两个主机通过一条发送速率(即带宽)是 1Gbps 的信道相连。数据的分组长 L 是 1000 字节,发送一个分组进入信道的时间是:\[ t_{trans} = \frac{L}{R} = \frac{8000bit/pkt}{10...
阅读全文
摘要:TCP是运输层的协议,向上层(应用层)提供面向连接的可靠的服务。而TCP的下层是网络层,网络层提供的尽力而为的服务,也就是说不提供任何质量保证。那么TCP是如何在不可信信道上为上层服务提供可靠的服务呢?这里的可靠包括两方面: 传输的数据比特不会受到损坏或丢失。所有数据都是按照其发送顺序进行交付的。一、可靠服务的模型 如上图所示,运输层向应用层提供可靠数据传输服务。运输层通过rdt_sen...
阅读全文
摘要:UDP优点关于何时、发送什么数据的应用层控制更为精细只需要应用层把数据传给UDP,UDP就把数据打包到网络层。对于TCP来说,存在一个拥塞控制机制,当链路变得拥塞时,会抑制TCP发送方,并造成数据延时。对于实时应用来说,一般要求最小的发送速率,不希望过分延迟报文段的传送,且能容忍一些数据丢失。这些适用于UDP服务模型。无需连接建立TCP真正开始传送数据之前,需要进行三次握手。UDP不需要任何准备,...
阅读全文
摘要:UDP一个 UDP 套接字是由一个二元组来全面标识的,该二元组包含一个目的 IP 地址和一个目的端口号。如果两个 UDP 报文段有不同的源 IP 地址和/或源端口号,但具有相同的目的 IP 地址和目的端口号,那么这两个报文段将通过相同的目的套接字被定向到相同的目的进程。 TCPTCP 套接字是由一个四元组(源 IP 地址、源端口号、目的 IP 地址、目的端口号)来标识的。当一个 TCP 报文段从...
阅读全文
摘要:TCP服务器有一个特殊的套接字,欢迎运行在任意主机上的客户进程的某些初始接触。三次握手期间,客户进程敲服务器的欢迎之门。该服务器“听到”敲门时,它将生成一个新的TCP套接字对象。它专门对客户进行连接的新生成的套接字,称为连接套接字 (connection socket)。初次遇到TCP套接字的学生有时会混淆欢迎套接字(所有要与服务器通信的客户的起始接触点)和每个新生成的服务器侧的连接套接字(随后...
阅读全文
摘要:网络核心设备并不在应用层上起作用,而仅在较低层起作用,特别是位于网络层及下面层次。这种基本设计,也即将应用软件限制在端系统的方法,促进了大量的网络应用程序的迅速研发和部署。 一、网络应用程序的体系结构客户 - 服务器体系架构 (client-server architecture)有一个总是打开的主机称为服务器,服务来自其他许多称为客户的主机的请求;客户相互之间不直接通信。常常会出现一台单独的服...
阅读全文