- 1、本文档共10页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
使用 SCTP 优化网络
流控制传输协议结合了 TCP 和 UDP 的优点
级别: 初级
M. Tim Jones (mtj@), 资深首席软件工程师, Emulex
2006 年 4 月 10 日
流控制传输协议(Stream Control Transmission Protocol,SCTP)是一种可靠的传输协
议,它在两个端点之间提供稳定、有序的数据传递服务(非常类似于 TCP),并且可以
保护数据消息边界(例如 UDP)。然而,与 TCP 和 UDP 不同,SCTP 是通过多宿主
(Multi-homing)和多流(Multi-streaming)功能提供这些收益的,这两种功能均可提高
可用性。在本文中,我们将学习 Linux® 2.6 内核中 SCTP 的关键特性,并通过服务器和
客户机的源代码了解该协议提供多流的能力。
SCTP 是在 IP 网络上使用的一种可靠的通用传输层协议。尽管 SCTP 协议最初是为发送电话信号而
设计的(RFC 2960 ),但带来了一个意外的收获:它通过借鉴 UDP 的优点解决了 TCP 的某些局
限。SCTP 提供的特性使套接字初始化的可用性、可靠性和安全性都得以提高。(图 1 给出了 IP 堆栈
的层次化架构。)
图 1. IP 栈的层次化架构
本文简要介绍了 Linux 2.6 内核中 SCTP 的概念,重点介绍了一些高级特性(例如多宿主和多流),
并且给出了服务器和客户机的部分代码片断(并给出了一个可以获得更多代码的 URL ),从而展示了
这种协议提供多流的能力。
下面让我们开始介绍 IP 堆栈的内容。
IP 堆栈
Internet 协议套件被划分成几层;每层都提供特定功能,如图 1 所示。
自下而上:
链路层(link layer) 提供了通信介质的物理接口(例如以太网设备)。
网络层(network layer) 负责管理网络中的报文移动,具体来说就是确保报文都到达自己的目
标(也称为路由)。
传输层(transport layer) 为应用层控制了报文在两台主机之间的流动。它还代表通信的应用程
序端点,称为 端口(port)。
最后,应用层(application layer) 对通过套接字传递数据具有深刻的意义。这些数据可能包括
通过简单邮件传输协议 (Simple Mail Transport Protocol,SMTP)发送的 e-mail 消息,或通过
超文本传输协议(Hypertext Transport Protocol ,HTTP)呈现的 Web 页面。
所有应用层协议都使用套接字层作为与传输层协议之间的接口。Sockets API 是由 UC Berkeley 在
BSD UNIX® 操作系统上开发的。
在深入钻研 SCTP 之前,让我们首先简单回顾一下传统的传输层协议。
传输层协议
两种最流行的传输层协议是传输控制协议(TCP )和用户数据报协议(UDP ):
TCP 是一种可靠的协议,它可以确保有序地发送数据,并管理网络中的拥塞问题。
UDP 是一种面向消息的协议,它不能确保有序地发送 据,也无法管理网络拥塞的问题。
然而,UDP 是一种快速协议,可以保护自己传输的消息的边界。
本文引出了另外一个选择:SCTP。它提供了像 TCP 一样可靠、有序地发送数据的功能,但却以像
UDP 一样面向消息的方式来进行操作,这可以保护消息边界。SCTP 还提供了几个高级特性:
多宿主(Multi-homing)
多流(Multi-streaming)
初始化保护(Initiation protection)
消息分帧(Message framing)
可配置的无序发送(Configurable unordered delivery )
平滑关闭(Graceful shutdown)
SCTP 的关键特性
SCTP 相对于传统的传输层协议来说,两个重要的增强是终端主机的多宿主和多流功能。
多宿主
多宿主 为应用程序提供了比 TCP 更高的可用性。多宿主主机就是一台具有多个网络接口的主机,因
此可以通过多个 IP 地址来访问这台主机。在 TCP 中,连接(connection ) 是指两个端点之间的一个
通道(在这种情况下,就是两台主机的网络接口之间的一个套接字)。SCTP 引入了 联合
(association ) 的概念,它也
您可能关注的文档
最近下载
- 小学研究课题立项申报:基于小学生高阶思维发展的课堂微项目活动设计研究.docx
- 网站安全等级保护--应急预案.docx
- 输送带发展前景分析.pptx
- IPC-6018c,6018cs,6017,6016,6015,6013d,6012e,ds,da 英文资料分享.pdf
- 高中数学公式(经典).doc VIP
- 顶管施工测量方案.doc
- 2024年度医院中医肛肠外科科带教计划课件.pptx
- 全国青少年劳动技能与智能设计大赛赛题与评价标准.PDF
- 2021-2022学年福建省宁德市校际联盟八年级(上)第一次月考英语试卷(附答案详解).docx VIP
- 2023年(最全版)二级建造师考试真题及参考答案.docx
文档评论(0)