互联网及其应用传输控制和socket.ppt

  1. 1、本文档共58页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
互联网及其应用传输控制和socket

传输层(传送层、运输层) 概述 TCP实现: 利用底层使用IP提供的不可靠服务,为应用程序提供一个可靠的数据传输服务 解决互联网中的数据丢失和延迟问题以提供有效的数据传输 不能让底层的网络和路由过载 可靠传输的必要性 编写应用程序向本机某个I/O设备发送数据,依赖底层计算机系统确保传输可靠,不需要验证数据是否到达,系统保证数据不丢失,重复和乱序 希望:编写互联网程序遵循同样标准和常规技术,把网络接口作为常规I/O 要求:互联网软件(协议)来保证 实现:传输协议(TCP)实现可靠性,应用程序发送和接受数据就和传输协议打交道 传输层的地位:中间层 传输层的功能 TCP提供的服务 面向连接:首先请求一个到目的地的连接 点对点通信:(point to point),两个端点 完全可靠:确保正确传输 全双工通信:在两个方向上缓冲数据 流接口:允许连续的字节流穿过连接,不提供记录式表示法 可靠的连接建立(机器重启,两个连接数据) 完美的连接终止:TCP确保在关闭连接之前传递数据的所有数据的可靠性 端对端服务 TCP是端对端协议:直接从一个机器的应用到另一个机器的应用的连接 虚连接(virtual connection):软件实现,软件通过信息来提供连接 TCP使用IP来携带消息,每一个TCP消息封装在数据报后通过互联网 虚连接的每一端都需要TCP软件,中间路由器不需要,正常情况下IP不阅读TCP内容,IP仅作为数据来传递 传输层模型 传输层协议与数据链路层协议的区别 端到端 端到端(运输层)协议 提供不同主机的进程之间的逻辑通信服务 网络层协议提供主机间的逻辑通信 包括如下功能: 复用 连接管理 分段/重组 可靠递交 流量控制 拥塞控制 基于端口的复用 QoS参数 传输协议的要素之一:寻址 因特网的传输协议--- TCP和UDP 常用的熟知端口号 7 ECHO 回送 37 TIME 时间 42 NAMESERVER 主机名字服务器 53 DOMAIN 域名服务器 67 BOOTPS 启动协议服务 69 TFTP 简单文件传输 161 SNMP SNMP 网络监控 …… 20 FTP-DATA 文件传输协议(数据连接) 21 FTP 文件传输协议(控制连接) 23 TELNET 远程登录终端 37 TIME 时间 43 NICNAME whois 程序 79 FINGER finger 程序 80 HTTP WEB 服务 …… TCP消息格式 TCP消息头部字段 TCP 报文段中的码元比特 码元比特字段(CODE BITS) 6bit 指出报文段的目的和内容,给出报文头中其他字段的解释 三次握手(3-way handshake) 理论证明:三次握手是包丢失,重复,延迟情况下确保非模糊协定的冲要条件 建立TCP连接:三次握手 连接释放:文雅释放 TCP连接管理的有限状态自动机 重发(retransmission) 可靠性:通过重发解决包丢失,定时和确认机制 广域网传输延迟比局域网的增加和不定 适应性重发:TCP监视当前连接的延迟(roud-trap delay,统计),改变重发定时器适应条件变化 TCP窗口管理的问题 缓冲流控与窗口 TCP采用窗口机制来控制数据流 窗口:建立连接的每一端分配一个缓冲区保持输入数据,并将缓冲区的尺寸发送给另一方;发送确认时,包含自己剩余的缓冲区尺寸,窗口通告(window advertisement) TCP的窗口管理 流量控制和缓存问题 拥塞控制congestion control 丢包,长延迟,重发?congestion collapse 一旦包丢失,减少重发数据的速率,迅速后撤机制 发送一个包,没丢失安全到达,数据量加倍,依次递推,直到窗口通告一半 TCP的拥塞控制 多路复用和分割 UDP的格式 UDP 运输层协议,只包括复用功能 提供不可靠、不保序的数据报服务 复用: Endpoint:IP地址+16比特端口号 客户方、服务方例子:telnet… 简单的差错检测功能:可选 UDP UDP头部:8个字节 检验和:检验和错误的UDP报文被丢弃,1的反码运算,和IP检验和类似 全0表示不使用检验和 UDP 协议封装 UDP 数据报由两部分构成:UDP 报头和数据区 UDP 报文是封装在 IP 分组中进行传送的 UDP 数据报的格式 UDP 数据报的校验 UDP 数据报校验是一项可选的功能 用户禁止该功能可以进一步提高通信的效率 UDP 校验和的计算方法:与 IP 分组头的校验相同 校验和计算:除覆盖数据报外,还覆盖一个 UDP 伪报头 UDP 基本工作过程 UDP 数据报的发送和接收通过 UDP 端口实现 端口是一个可读写的结构,具有内部的报文缓冲区 数据报发送 U

文档评论(0)

taotao0c + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档