计算机网络 (1)

6 minute read

Web应用 RTT : Round Trip Time 响应时间 Response time 发起,建立TCP链接:1个RTT

持久性HTTP 非持久性链接问题 每个对象需要2个RTT 为每个TcP链接开销资源overhead ->持久性链接 服务器保持TCP连接的打开 无流水的持久性链接 每个被引用的对象耗时1个RTT

带有水机制的持久性 HTTP1.1,所有对象耗时1RTT

HTTP消息格式 HTTP协议 - request,response 请求消息 - ascii HTTP/1.0 - GET POST HEAD HTTP/1.1 - GET POST HEAD DELETE … HTTP response 状态代码 200 301 400 404 505 .。。(参考RFC)

Cookie技术 HTTP协议无状态->cookie 解决网上购物等 记录会话 身份认证 推荐 客户-游览器 服务器-后台数据库来管理 有隐私问题

web缓存/代理服务器技术

Email 应用 SMTP协议 - 使用TCP 端口25 可靠传输 命令/响应模式 command/response

mime - 多媒体邮件扩展 头部增加额外的行 邮件访问协议 - POP IMAP HTTP POP - 认证过程 命令/响应 事务阶段 - List retr dele quit POP3无状态 IMAP协议 支持跨session

DNS应用 域名向ip地址的翻译 分布式层次式数据库

P2P应用 bittorrent 洪范式 - query queryhit 层次式 - 超级节点 supernode

socket编程 api berkeley unix socket 微软 winsock at&T。。。

socket api函数 WSAStartup 初始化 WSACleanup 最后 socket 创建 socket面向tcp/ip的服务类型 (tcp:可靠,面向连接,字节流传输,点对点 udp:不可靠,无连接,数据报传输) closesocket 关闭 bind 绑定socket本地端点地址 listen connect仅用于客户端,tcp,udp可用 accept 仅用于tcp,服务端 send:tcp sendto: udp recv 网络字节顺序 (network byte order) (listen accept 仅用于服务器) 解析协议号 函数getprotobyname() tcp客户端软件流程 1)确定服务器的ip,port 2)创建socket 3)分配本地端点地址 4)链接服务器 5) 遵循应用层协议进行通信 6)关闭 udp流程 1)确定服务器ip,port 2)创建socket 3)分配本地端点地址 4)指定服务器端点地址,构造udp数据报 4)通信 5)关闭

传输层 网络层:主机之间 传输层:应用进程之间 internet传输层协议:tcp(可靠,按序),udp(不可靠,best-effort) 不保障带宽 多路复用/分用 UDP:用于容忍丢失,速率敏感,DNS,SNMP udp校验和(checksum):检测udp段在传输中是否发生错误 可靠:不错,不丢,不乱 RDT 1.0:可靠信道上的可靠数据传输 Rdt2.0: ACK NAK ARQ 停-等协议 Rdt2.1 2.2:增加序列号 / 2.2 只使用ACK rdt3.0:重复->序列号解决 / 需要定时器计时器(timer) Ttransmit=L/R Usender=(L/R)/(RTT+L/R) Rdt3.0 性能比较差 / 网络协议限制物理利用

流水线机制 / 滑动窗口协议 流水线机制:提高利用率 / 更大的序列号范围 / 需更大缓存分组 滑动窗口协议:窗口尺寸N / 最多N个确认消息 / 窗口向前滑动 / GBN , SR GBN:累计确认 / 设置计时器 SR: selective repeat / gbn缺陷 / 每个分组单独进行确认 /

TCP协议 点对点 / 可靠/ 按序 / 流水线机制 / 发送方/接收方缓存 / 全双工(full-duplex) / 面向连接 / 序列号:segment中第一个字节的编号 / ACK:累计确认 (tcp的实现者做决策乱序到达segment) 如何估计RTT->SampleRTT / SampleRTT变化(指数加权移动平均) EstimatedRTT = (1-a)EstimatedRTT + asampleRTT 快速重传机制: TCP流量控制(flow control) buffer中的可用空间(spare room)=RcvWindow = RcvBuffer - [LastByteRcvd - LastByteRead] RcvWindow告诉Sender / RcvWindow=0会怎么样? TCP连接管理:3次握手

拥塞控制原理 拥塞(Congestion):太多主机发数据或者速度太快 网络无法处理 ->分组丢失/延迟过大 SYN: The active open is performed by the client sending a SYN to the server. The client sets the segment’s sequence number to a random value A. synchronise packet in transmission control protocol (TCP) ABR:available bit rate / RM cells: NI bit: rate不许增加 CI bit:拥塞指示 / ATM ABR TCP拥塞控制 aimb:加性增-乘性减 / 锯齿行为 慢启动:ss / 初始速率慢 快速增长 / 指数性增长 Threshold 变量 当congwin达到loss事件前值的1/2->指数性切换为线性 TCP throughput 吞吐率 TCP的公平性 : K个TCP Session 。。。 tcp具有公平性 传输层服务:服用 / 可靠数据传输 / 流量控制 / 拥塞控制 Internet的传输层:UDP / TCP

网络层服务 核心功能:转发/路由 - 路由算法 / 链接建立 (ATM,帧中继,X.25) 网络层链接:主机之间 / 传输层:应用进程之间 网络层服务模型:无连接服务 数据报网络 / 连接服务 虚电路网络 分组交换网络 - 数据报网络 虚电路网络 (类似传输层 无连接服务udp 面向连接tcp) 虚电路 virtual circuit / 一条路径 虚电路号 / 虚电路转发表 维护vc连接的状态信息 虚电路信令协议:用于vc的建立,维护,拆除 / 目前的internet不采用 / 应用于atm,frame-relay 等

数据报网络 : 网络层无连接 / 携带目的地址(vc的话 携带vcid) 数据报转发表 目的地址->地址范围 (因为地址40多亿地址) 最长前缀匹配优先

Internet(数据报网络) - 简化网络 复杂边缘 / atm(vc网络) - 简化边缘 复杂网络

Internet网络(层) - IP协议 / 路由协议 - rip,ospf,bgf等 / 转发表(路由表) / ip协议 - 寻址规约,数据报格式 / icmp协议 - 差错报告,路由器信令 / ip分组格式 : 版本号占4位 / 首部长度占4位 - 以4字节为单位 / 服务类型(tos)占8位 // 总长度字段占16位 - 最大ip分组的总长度 : 65535B , 最小 : 20B , ip分组可以封装的最大数据 : 65535 - 20 = 65515B // 标识字段占16 / 标志位占3 - 保留,df,mf / df = 1 : 禁止分片 , = 0 : 允许 mf = 1 : 非最后一片 , = 0 : 最后 // 片偏移占13 - 以8字节为单位 生存时间ttl占8位 路由器转发一次分组,ttl减1 / ttl = 0 , 丢弃ip分组 // 协议字段占8位 - 6为tcp 17为udp / 首部校验和占16 // 源ip地址,目的IP地址 字段各占32位

ip分片 / mtu最大传输单元 过程 : 原ip分组总长度L , 待转发链路的mtu为M 若L>M , DF=0 则分片 最大分片可封装的数据 - 8的倍数

ip编址addressing : 源地址sa , 目的地址da 接口interface : 主机/路由器 - 物理链路 链接 / 路由器有多个接口 / 主机只有1,2个接口 ip地址 : 32bit(ipv4) / ip地址与每个接口关联 ip子网subnet : IP地址 - 网络号netid 主机号hostid 不跨越路由器可以彼此物理联通的接口 / 分类 有类编址 a类 50% netid 8 , hostid 24 0.0.0.0 - 127.255.255.255 b类 25% netid 16 , hostid 16 128.0.0.0 - 129.255.255.255 c类 12.5% netid 24 , hostid 8 192.0.0.0 - 223.255.255.255 d类 6.25% 32位 (1110) 224.0.0.0 - 239.255.255.255 e类 6.25% 32位 (1111) 240.0.0.0 - 255.255.255.255 特殊ip地址 * 参考表 * 私有ip地址 a class netid 10 / b netid 172.16 - 172.31 / c netid 192.168.0 - 192.168.255

子网掩码 , 子网划分

Categories:

Updated: