精华内容
下载资源
问答
  • 文章目录简介UDT协议UDT的缺点总结 简介 简单就是美。在网络协议的世界中,TCP和UDP是建立在IP协议基础上的两个非常通用的协议。我们现在经常使用的HTTP协议就是建立在TCP协议的基础上的。相当于TCP的稳定性来说,...

    简介

    简单就是美。在网络协议的世界中,TCP和UDP是建立在IP协议基础上的两个非常通用的协议。我们现在经常使用的HTTP协议就是建立在TCP协议的基础上的。相当于TCP的稳定性来说,UDP因为其数据传输的不可靠性,所以用在某些特定的场合,如直播、广播消息、视频音频流处理等不太需要校验数据完整性的场合。

    UDP相对TCP协议而言,其特点就是简洁,它删除了在TCP协议中为了保证消息准确性的各种限制性特征。简洁带来的好处就是快!今天给大家讲解一下,基于UDP的高速数据传输协议UDT。

    UDT协议

    UDP因为其简单的特性,所以可以做到很多TCP做不到的事情,比如进行大数据量的快速传输。这里并不是要将TCP和UDP分个好坏高下,毕竟各个协议的适应场景不同,他们之所以流行,就是因为可以在特定的场景发挥出重要的作用。套用中国的一句谚语就是:不管白猫黑猫,能抓到老鼠的,就是好猫。

    用好UDP协议,我们就可以快速的传递大量的数据,这个协议就是UDT协议。

    话说,像这些基础协议都是老外发明的,而中国的互联网巨头都在抢着做平台、做流量的生意,真的是无话可说…

    UDT项目开始于2001年,是由Yunhong Gu在芝加哥伊利诺伊大学国家数据挖掘中心 (NCDM)读博士期间开发的,并在毕业之后持续的进行维护和升级改进。

    UDP的出现是因为那时候,传输更快更便宜的光纤网络出现了,代替了之前的铜缆线和双绞线,从而极大的提升了信息传输的效率。这时候大家就发现之前使用TCP协议来进行大数据的传输会有很大的问题。从而基于UDP的UDT协议出现了。

    UDT的第一个版本,也称为SABUL(Simple Available Bandwidth Utility Library),UDT通过支持批量数据传输,从而方便在私有网络中进行数据的传输。

    要注意的是UDT的第一个版本SABUL使用UDP协议进行传输数据,同时使用单独的TCP协议连接传输控制消息。

    UDT的初始版本是在超高速网络(1 Gbit/s、10 Gbit/s等)上进行开发和测试的,2003年10月,NCDM实现了从美国芝加哥到荷兰阿姆斯特丹的平均每秒6.8G比特的传输。在30分钟内的测试中,他们传输了大约1.4TB的数据。

    从2004年发布的2.0版本开始,SABUL改名为UDT,UDT的全称是UDP-based Data Transfer Protocol,也就是基于UDP的数据传输协议。

    为什么要改成UDT呢?因为在UDT2.0中,删除了SABUL中的TCP 控制连接,并使用UDP来处理数据和控制信息。 另外,UDT2还引入了一种新的拥塞控制算法,允许协议动态调整UDT和TCP流,实现UDT和TCP流的并发运行。

    在2006年,UDT协议升级到了3版本,该协议不仅是在私有网络中运行了,而是扩展到了商业互联网中。同时UDT3中的拥塞控制可以进行调整优化,可以在低带宽的环境中运行,并且允许用户轻松定义和安装自己的拥塞控制算法。另外,UDT3还显着减少了系统资源(CPU和内存)的使用。

    2007年,UDT4版本在高并发和防火墙穿透方面进行优化和性能的提升。UDT4允许多个UDT连接绑定到同一个UDP端口,它还支持集合连接设置,以便UDP hole punching。

    什么是UDP hole punching呢?

    UDP hole punching通常被用在网络地址转换 (NAT)中。用来维护穿越NAT的用户UDP数据包流。它是一种使用网络地址转换器在专用网络中的Internet主机之间建立双向UDP连接的方法。

    什么是NAT呢?

    大家都知道IPV4地址是有限的,很快IPV4地址就快用完了,那怎么解决这个问题呢?

    当然,一个永久解决的办法是IPV6,不过IPV6推出这么多年了,好像还没有真正的普及。

    不使用IPV6的话还有什么解决办法呢?

    这个办法就是NAT(Network Address Translators)。

    NAT的原理是将局域网的IP和端口和NAT设备的IP和端口做个映射。

    NAT内部维护着一张转换表。这样就可以通过一个NAT的IP地址和不同的端口来连接众多的局域网服务器。

    那么NAT有什么问题呢?

    NAT的问题在于,内部客户端不知道自己外网IP地址,只知道内网IP地址。

    如果是在UDP协议中,因为UDP是无状态的,所以需要NAT来重写每个UDP分组中的源端口、地址,以及IP分组中的源IP地址。

    如果客户端是在应用程序内部将自己的IP地址告诉服务器,并想跟服务器建立连接,那么肯定是建立不了的。因为找不到客户端的公网IP。

    即使找到了公网IP,任何到达NAT设备外网IP的分组还必须有一个目标端口,而且NAT转换表中也要有一个条目可以将其转换为内部主机的IP地址和端口号。否则就可能出现下图的连接失败的问题。

    怎么解决呢?

    第一种方式是使用STUN服务器。

    STUN服务器是IP地址已知的服务器,客户端要通信之前,先去STUN服务器上面查询一下自己的外网IP和端口,然后再使用这个外网IP和端口进行通信。

    但有时UDP包会被防火墙或者其他的应用程序所阻挡。这个时候就可以使用中继器技术Traversal Using Relays around NAT (TURN) 。

    双方都将数据发送到中继器server,由中继器server来负责转发数据。注意,这里已经不是P2P了。

    最后,我们有一个集大成者的协议叫做ICE(Interactive Connectivity Establishment ):

    它实际上就是直连,STUN和TURN的综合体,能直连的时候就直连,不能直连就用STUN,不能用STUN就用TURN。

    在使用STUN和ICE的过程中,我们会有一台网络主机用来建立端口映射和保持其他UDP端口状态,但是UDP的状态通常在几十秒到几分钟的短时间后过期,为了保证NAT中UDP的状态和生命周期,于是有了UDP hole punching的技术。通过定时传输keep-alive数据包,对NAT中的UDP状态进行更新。

    UDT的缺点

    因为UDT是基于UDP协议的,但是UDP协议因为其简洁的特性,所以并不具备安全性的特征。所以基于其上的UDT协议因为缺乏安全特性,所以在商业环境中应用会受到一定的限制。

    不过UDT的新版本已经在开发中,大家可以期待一下。

    总结

    UDT被广泛用于高性能计算,比如光纤网络上的高速数据传输。我们后续会在netty中告诉大家怎么使用UDT协议。

    本文已收录于 http://www.flydean.com/11-udt/

    最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!

    欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!

    展开全文
  • 几种常用的网络传输协议

    千次阅读 2019-10-07 10:36:08
    这一层主要涉及的是网络传输协议,它提供的是一套网络数据传输标准,如TCP协议。  传输层的功能包括:映像传输地址到网络地址、多路复用与分割、传输连接的建立与释放、分段与重新组装、组块与分块。  根据传输层...

    一、OSI模型

    名称            层次                功能

    物理层          1               实现计算机系统与网络间的物理连接(网线)

    数据链路层   2               进行数据打包与解包,形成信息帧

    网络层          3               提供数据通过的路由(路由器、交换机)

    传输层          4               提供传输顺序信息与响应(TCP、UDP)

    会话层          5               建立和中止连接(避免用户去调用TCP和UDP)

    表示层          6               数据转换、确认数据格式(linux和window等系的差异)

    应用层          7               提供用户程序接口(HTTP、FTP等)

    二、协议层次

    网络中常用协议以及层次关系

    1、 进程/应用层的协议

    平时最广泛的协议,这一层的每个协议都由客程序和服务程序两部分组成。程序通过服务器与客户机交互来工作。常见协议有:Telnet、FTP、SMTP、HTTP、DNS等。

    Telnet:对应Windows系统中的telnet指令,可以用于在本地调用另一台电脑上的程序

    FTP:文件传输协议

    SMTP:简单邮件传输协议,是在网络上传输邮件的标准。

    HTTP:超文本传输协议,广泛应用于网页请求。

    DNS:域名解析协议.

    2、 传输层协议

    建立并且维护连接,用于保证主机间数据传输的安全性。这一层主要有两个协议:

    TCP(Transmission Control Protocol:传输控制协议;面向连接,可靠传输

    UDP(User Datagram Protocol):用户数据报协议;面向无连接,不可靠传输

    3、 Internet层协议

    负责数据的传输,在不同网络和系统间寻找路由,分段和重组数据报文,另外还有设备寻址。网络层包括如下协议:

    IP(Internet Protocol):Internet协议,负责TCP/IP主机间提供数据报服务,进行数据封装并产生协议头,TCP与UDP协议的基础。

    ICMP(Internet Control Message Protocol):Internet控制报文协议。ICMP协议其实是IP协议的的附属协议,IP协议用它来与其它主机或路由器交换错误报文和其它的一些网络情况,在ICMP包中携带了控制信息和故障恢复信息。

    ARP(Address Resolution Protocol)协议:地址解析协议。

    RARP(Reverse Address Resolution Protocol):逆向地址解析协议。

    OSI 全称(Open System Interconnection)网络的OSI七层结构
    (1)物理层——Physical 
    这是整个OSI参考模型的最底层,它的任务就是提供网络的物理连接。所以,物理层是建立在物理介质上(而不是逻辑上的协议和会话),它提供的是机械和电气接口。主要包括电缆、物理端口和附属设备,如双绞线、同轴电缆、接线设备(如网卡等)、RJ-45接口、串口和并口等在网络中都是工作在这个层次的。 
    物理层提供的服务包括:物理连接、物理服务数据单元顺序化(接收物理实体收到的比特顺序,与发送物理实体所发送的比特顺序相同)和数据电路标识。

    (2)数据链路层——DataLink 
    数据链路层是建立在物理传输能力的基础上,以帧为单位传输数据,它的主要任务就是进行数据封装和数据链接的建立。封装的数据信息中,地址段含有发送节点和接收节点的地址,控制段用来表示数据连接帧的类型,数据段包含实际要传输的数据,差错控制段用来检测传输中帧出现的错误。 
    数据链路层可使用的协议有SLIP、PPP、X.25和帧中继等。常见的集线器和低档的交换机网络设备都是工作在这个层次上,Modem之类的拨号设备也是。工作在这个层次上的交换机俗称“第二层交换机”。 
    具体讲,数据链路层的功能包括:数据链路连接的建立与释放、构成数据链路数据单元、数据链路连接的分裂、定界与同步、顺序和流量控制和差错的检测和恢复等方面。简单的说就是规定了几个位或几个字节表示一个数据.

    (3)网络层——Network 
    网络层属于OSI中的较高层次了,从它的名字可以看出,它解决的是网络与网络之间,即网际的通信问题,而不是同一网段内部的事。网络层的主要功能即是提供路由,即选择到达目标主机的最佳路径,并沿该路径传送数据包。除此之外,网络层还要能够消除网络拥挤,具有流量控制和拥挤控制的能力。网络边界中的路由器就工作在这个层次上,现在较高档的交换机也可直接工作在这个层次上,因此它们也提供了路由功能,俗称“第三层交换机”。 
    网络层的功能包括:建立和拆除网络连接、路径选择和中继、网络连接多路复用、分段和组块、服务选择和流量控制。

    (4)传输层——Transport 
    传输层解决的是数据在网络之间的传输质量问题,它属于较高层次。传输层用于提高网络层服务质量,提供可靠的端到端的数据传输,如常说的QoS就是这一层的主要服务。这一层主要涉及的是网络传输协议,它提供的是一套网络数据传输标准,如TCP协议。 
    传输层的功能包括:映像传输地址到网络地址、多路复用与分割、传输连接的建立与释放、分段与重新组装、组块与分块。 
    根据传输层所提供服务的主要性质,传输层服务可分为以下三大类: 
    A类:网络连接具有可接受的差错率和可接受的故障通知率(网络连接断开和复位发生的比率),A类服务是可靠的网络服务,一般指虚电路服务。 
    C类:网络连接具有不可接受的差错率,C类的服务质量最差,提供数据报服务或无线电分组交换网均属此类。 
    B类:网络连接具有可接受的差错率和不可接受的故障通知率,B类服务介于A类与C类之间,在广域网和互联网多是提供B类服务。

    网络服务质量的划分是以用户要求为依据的。若用户要求比较高,则一个网络可能归于C型,反之,则一个网络可能归于B型甚至A型。例如,对于某个电子邮件系统来说,每周丢失一个分组的网络也许可算作A型;而同一个网络对银行系统来说则只能算作C型了。

    (5)会话层——Senssion 
    会话层利用传输层来提供会话服务,会话可能是一个用户通过网络登录到一个主机,或一个正在建立的用于传输文件的会话。 
    会话层的功能主要有:会话连接到传输连接的映射、数据传送、会话连接的恢复和释放、会话管理、令牌管理和活动管理。

    (6)表示层——Presentation 
    表示层用于数据管理的表示方式,如用于文本文件的ASCII和EBCDIC,用于表示数字的1S或2S补码表示形式。如果通信双方用不同的数据表示方法,他们就不能互相理解。表示层就是用于屏蔽这种不同之处。 
    表示层的功能主要有:数据语法转换、语法表示、表示连接管理、数据加密和数据压缩。

    (7)应用层——Application 
    这是OSI参考模型的最高层,它解决的也是最高层次,即程序应用过程中的问题,它直接面对用户的具体应用。应用层包含用户应用程序执行通信任务所需要的协议和功能,如电子邮件和文件传输等,在这一层中TCP/IP协议中的FTP、SMTP、POP等协议得到了充分应用。 
    SNMP(Simple Network Management Protocol,简单网络管理协议)的前身是简单网关监控协议(SGMP),用来对通信线路进行管理。随后,人们对SGMP进行了很大的修改,特别是加入了符合Internet定义的SMI和MIB:体系结构,改进后的协议就是著名的SNMP。SNMP的目标是管理互联网Internet上众多厂家生产的软硬件平台,因此SNMP受Internet标准网络管理框架的影响也很大。现在SNMP已经出到第三个版本的协议,其功能较以前已经大大地加强和改进了。

    SNMP的体系结构是围绕着以下四个概念和目标进行设计的:保持管理代理(agent)的软件成本尽可能低;最大限度地保持远程管理的功能,以便充分利用Internet的网络资源;体系结构必须有扩充的余地;保持SNMP的独立性,不依赖于具体的计算机、网关和网络传输协议。在最近的改进中,又加入了保证SNMP体系本身安全性的目标。 
    OSPF(Open Shortest Path First开放式最短路径优先)是一个内部网关协议(Interior Gateway Protocol,简称IGP),用于在单一自治系统(autonomous system,AS)内决策路由。与RIP相对,OSPF是链路状态路由协议,而RIP是距离向量路由协议。
    RIP(Routing information Protocol)是应用较早、使用较普遍的内部网关协议(Interior Gateway Protocol,简称IGP),适用于小型同类网络,是典型的距离向量(distance-vector)协议。文档见RFC1058、RFC1723。 
    RIP通过广播UDP报文来交换路由信息,每30秒发送一次路由信息更新。RIP提供跳跃计数(hop count)作为尺度来衡量路由距离,跳跃计数是一个包到达目标所必须经过的路由器的数目。如果到相同目标有二个不等速或不同带宽的路由器,但跳跃计数相同,则RIP认为两个路由是等距离的。RIP最多支持的跳数为15,即在源和目的网间所要经过的最多路由器的数目为15,跳数16表示不可达
    CSMA/CD(Carrier Sense Multiple Access/Collision Detect)
    即载波监听多路访问/冲突检测方法

    展开全文
  • 常用多媒体传输协议简介

    千次阅读 2019-03-08 16:39:20
    实时消息传递协议(RTMP)最初是由Macromedia开发的专有协议,用于通过因特网在Flash播放器和服务器之间传输音频,视频和数据。Macromedia现在归Adobe所有,该公司已发布该协议规范的不完整版本供公众使用。 RTMP...

    RTMP

    实时消息传递协议(RTMP)最初是由Macromedia开发的专有协议,用于通过因特网在Flash播放器和服务器之间传输音频,视频和数据。Macromedia现在归Adobe所有,该公司已发布该协议规范的不完整版本供公众使用。

    RTMP协议有多种变体:
    “普通”协议,默认使用TCP端口号1935。
    RTMPS,它是通过TLS / SSL连接的RTMP 。
    RTMPE,使用Adobe自己的安全机制进行RTMP加密。虽然实现的细节是专有的,但该机制使用行业标准的加密原语。[1]
    RTMPT,封装在HTTP请求中以遍历防火墙。经常发现RTMPT利用TCP 端口 80和443 上的明文请求绕过大多数企业流量过滤。封装的会话可以携带普通的RTMP,RTMPS或RTMPE分组。
    RTMFP,它是通过UDP而不是TCP的RTMP,取代了RTMP Chunk Stream。安全实时媒体流协议套件由Adobe Systems开发,使最终用户能够直接相互连接和通信(P2P)。
    虽然RTMP的主要动机是作为播放Flash视频的协议,但它也用于其他一些应用程序,例如Adobe LiveCycle Data Services ES。

    RTMP是一种基于TCP的协议,可以维护持久连接并允许低延迟通信。为了顺利地传输流并传输尽可能多的信息,它将流分成片段,并且它们的大小在客户端和服务器之间动态协商。有时,它保持不变; 对于音频数据,默认片段大小为64字节,对于视频数据和大多数其他数据类型,默认片段大小为128字节。然后可以交织来自不同流的片段,并在单个连接上复用。对于较长的数据块,协议因此每个片段仅携带一个字节的头部,因此产生的开销非常小。然而,实际上,单个片段通常不是交错的。相反,交织和多路复用在分组级别完成,跨越若干不同活动信道的RTMP分组以这样的方式交织,以确保每个信道满足其带宽,等待时间和其他服务质量要求。以这种方式交织的分组被视为不可分割的,并且不在分段级别上交织。

    RTMP定义了几个可以在其上发送和接收分组的虚拟信道,并且它们彼此独立地操作。例如,存在用于处理RPC请求和响应的信道,用于视频流数据的信道,用于音频流数据的信道,用于带外控制消息的信道(片段大小协商等)等等。 。在典型的RTMP会话期间,在任何给定时间可以同时激活多个通道。当编码RTMP数据时,生成包头。除其他事项外,包头指定了发送它的信道的ID,生成它的时间戳(如果需要),以及包的有效载荷的大小。然后,此标头后跟数据包的实际有效内容,在通过连接发送之前,根据当前商定的片段大小进行分段。数据包标头本身从不分段,其大小不计入数据包第一个片段中的数据。换句话说,只有实际的数据包有效负载(媒体数据)会受到碎片的影响。

    在更高级别,RTMP封装MP3或AAC音频和FLV1视频多媒体流,并且可以使用动作消息格式进行远程过程调用(RPC)。所需的任何RPC服务都是使用单个客户端/服务器请求/响应模型异步进行的,因此不需要实时通信。
    在这里插入图片描述
    在这里插入图片描述

    RTP

    实时传输协议(RTP)是一种网络协议,用于在传送音频和视频IP网络。RTP用于涉及流媒体的通信和娱乐系统,例如电话,包括WebRTC的视频电话会议应用,电视服务和基于网络的即按即说功能。

    RTP通常在用户数据报协议(UDP)上运行。RTP与RTP控制协议(RTCP)结合使用。当RTP承载媒体流(例如,音频和视频)时,RTCP用于监视传输统计和服务质量(QoS)并帮助多个流的同步。RTP是IP语音的技术基础之一,并且在这种情况下通常与诸如会话发起协议(SIP)之类的信令协议结合使用,该协议建立跨网络的连接。

    RTP由互联网工程任务组(IETF)的音频 - 视频传输工作组开发,并于1996年首次发布为RFC 1889,于2003年被RFC 3550取代。

    RTP专为端到端,实时,流媒体传输而设计。该协议提供抖动补偿和丢包检测以及无序传送的功能,这些功能在IP网络上的UDP传输过程中尤为常见。RTP允许通过IP多播将数据传输到多个目的地。 RTP被视为IP网络中音频/视频传输的主要标准,并与相关的配置文件和有效载荷格式一起使用。 RTP的设计基于称为应用层框架的架构原理协议功能在应用程序中实现,而不是在操作系统的协议栈中实现。

    实时多媒体流应用程序需要及时传递信息,并且通常可以容忍一些数据包丢失以实现此目标。例如,音频应用中的分组丢失可能导致丢失一小部分音频数据,这可以通过适当的错误隐藏算法而变得不明显。[3]所述的传输控制协议(TCP),尽管标准化的RTP使用,[4]没有被正常在RTP应用中使用,因为TCP倾向于过度时效的可靠性。相反,大多数RTP实现都是基于用户数据报协议(UDP)构建的。专门为多媒体会话设计的其他传输协议是SCTP [5]和DCCP,但截至2012年,它们并未得到广泛使用。

    RTP由IETF标准组织的音频/视频传输工作组开发。RTP与其他协议(如H.323和RTSP)结合使用。[2] RTP规范描述了两种协议:RTP和RTCP。RTP用于传输多媒体数据,RTCP用于周期性地发送控制信息和QoS参数。

    数据传输协议RTP承载实时数据。该协议提供的信息包括时间戳(用于同步),序列号(用于分组丢失和重新排序检测)和有效载荷格式,其指示数据的编码格式。所述的控制协议,RTCP,用于媒体流之间的服务质量(QoS)的反馈和同步质量。与RTP相比,RTCP流量的带宽很小,通常约为5%。

    RTP会话通常使用信令协议在通信对等体之间发起,例如H.323,会话发起协议(SIP),RTSP或Jingle(XMPP)。这些协议可以使用会话描述协议来指定会话的参数。

    为每个多媒体流建立RTP会话。音频和视频流可以使用单独的RTP会话,使接收器能够选择性地接收特定流的组件。会话由目的地IP地址和一对RTP和RTCP端口组成。规范建议选择RTP端口号为偶数,并且每个关联的RTCP端口是下一个更高的奇数。但是,在复用协议的应用程序中,为RTP和RTCP选择单个端口。 RTP和RTCP通常使用非特权UDP端口(1024到65535),但也可能使用其他传输协议,最值得注意的是,SCTP和DCCP,因为协议设计是独立于传输的。

    在这里插入图片描述

    RTSP

    实时流协议(RTSP)是一种网络控制协议,专为娱乐和通信系统的使用,以控制流媒体 服务器。该协议用于建立和控制端点之间的媒体会话。媒体服务器的客户端发出VHS风格的命令,例如播放,录制和暂停,以便于实时控制从服务器到客户端(视频点播)或从客户端到服务器的媒体流(录音) 。

    流数据本身的传输不是RTSP的任务。大多数RTSP服务器将实时传输协议(RTP)与实时控制协议(RTCP)结合使用以进行媒体流传输。但是,一些供应商实施专有传输协议。例如,RealNetworks的RTSP服务器软件也使用了RealNetworks的专有实时数据传输(RDT)。

    RTSP由RealNetworks,Netscape 和哥伦比亚大学开发,第一份草案于1996年提交给IETF。[2]它由互联网工程任务组(IETF )的多方多媒体会话控制工作组(MMUSIC WG)标准化。并于1998年作为RFC 2326发布。RTSP 2.0 于2016年作为RFC 7826发布,作为RTSP 1.0的替代品。RTSP 2.0基于RTSP 1.0,但除了基本版本协商机制外,不向后兼容。

    虽然在某些方面类似于HTTP,但RTSP定义了用于控制多媒体回放的控制序列。虽然HTTP是无状态的,但RTSP具有状态; 在需要跟踪并发会话时使用标识符。与HTTP类似,RTSP使用TCP来维护端到端连接,并且虽然大多数RTSP控制消息由客户端发送到服务器,但是一些命令在另一个方向上传播(即从服务器到客户端)。

    SIP

    会话发起协议(SIP)是一种信令协议用于发起,维持和终止实时会话包括语音,视频和消息应用程序。[1] SIP用于信令和控制多媒体通信会话中的应用网络电话的语音和视频通话,在私有IP电话系统,在即时通讯上的互联网协议(IP)网络以及手机拨打了LTE(VoLTE的)。

    该协议定义了交换的消息的特定格式以及参与者合作的通信顺序。SIP是一种基于文本的协议,包含超文本传输​​协议(HTTP)和简单邮件传输协议(SMTP)的许多元素。[2]使用SIP建立的呼叫可以由多个媒体流组成,但是在SIP消息中作为有效载荷交换数据的应用(例如文本消息)不需要单独的流。

    SIP与指定和携带会话媒体的其他几种协议一起工作。最常见的是,媒体类型和参数协商以及媒体设置使用会话描述协议(SDP)来执行,该协议作为SIP消息中的有效载荷来承载。SIP被设计为独立于基础的传输层的协议,并且可与使用用户数据报协议(UDP),所述传输控制协议(TCP),和流控制传输协议(SCTP)。为了在不安全的网络链路上安全地传输SIP消息,可以使用传输层安全性来加密协议(TLS)。对于媒体流(语音,视频)的传输,SIP消息中携带的SDP有效载荷通常采用实时传输协议(RTP)或安全实时传输协议(SRTP)。
    在这里插入图片描述
    在这里插入图片描述

    展开全文
  • 电子邮件(e-mail)传输协议和接收协议

    千次阅读 2021-08-01 03:58:57
    一、电子邮件传输协议SMTP:SMTP是Simple Mail Transfer Protocol的缩写,意思就是简单邮件传输协议,SMTP是一种提供可靠且有的电子邮件传输协议。SMTP是一种建模在FTP文件传输协议上的一种邮件服务,主要用于传输...

    一、电子邮件传输协议

    SMTP:SMTP是Simple Mail Transfer Protocol的缩写,意思就是简单邮件传输协议,SMTP是一种提供可靠且有的电子邮件传输协议。SMTP是一种建模在FTP文件传输协议上的一种邮件服务,主要用于传输系统之间的邮件信息并提供来信通知。SMTP独立于特定的传输子系统,且只需要可造有序的数据流支持。SMTP重要特性之一是其能跨越网络传输邮件,即“SMTP邮件中继”。通常,一个网络可以由互联网上的TCP可相互访问的主机、防火墙分隔的TCP/IP网络上可相互访问的主机,以及其它LAN/MAN/WAN中的主机利用非TCP传输协议组成。使用SMTP,可以实现相同网络上邮件服务器的数据传输,也可通过中继器或网关实现某邮件服务器与其它网络之间的邮件传输。在这种方式下,邮件的发送可能经过从发送端到接收端路径上的大量中间中继器或网关主要域名服务系统DNS的邮件交换服务器可以用来识别出传输邮件的下一跳IP地址。SMTP在传输文件的过程中使用25号端口。

    SMTP简单邮件传输协议是定义邮件传输的协议,它工作用ISO参考模型的应用层,由RFC0821所定义。SMTP协议规定的命令是以明文方式传输的。

    当你的一个朋友向你发送邮件时,他的邮件服务器和你的邮件服务器通过SMTP协议通信,将邮件传递给你邮件地址所指向的邮件服务器上,这里假设你的本地邮件服务器是Linux操作系统,若你直接登陆到邮件服务器上,则可以使用mail等客户端软件阅读邮件,但是若你希望使用本地的MUA(Mail User Agent,如Outlook Express等邮件客户端软件来阅读邮件时,则本地客户端通过POP3或IMAP协议与邮件服务器交互,将邮件信息传送到客户端,如Windows系统。而如果你向你的朋友回复一封邮件时,你所使用的MUA也是通过SMTP协议与邮件服务器,一般为发送邮件地址对应的Email地址服务器通信,指示其希望邮件服务器需要转发一封邮件到你朋友的邮件地址所指向的邮件服务器中。若本地邮件服务器允许你通过它转发邮件,则服务器通过SMTP协议发送邮件到对方的邮件服务器。这里就接受和发送邮件服务器的全部过程。

    二、电子邮件接收协议

    POP、POP3: 即邮局协议(Post Office Protocol),POP3是邮局协议的第3版。POP协议允许工作站动态访问服务器上的邮件,目前已经发展到第三片,我们称之为POP3。POP3允许工作站检索邮件服务器上的邮件。POP3传输的是数据信息,这些消息可以是指令,也可以是应答。

    创建一个分布式的电子邮件系统有多种不同的技术和途径:POP邮件协议、DMS分层式电子邮件系统协议和IMAP因特网信息访问协议。其中POP协议创建最早,因此人家也最了解他;而DMSP具有较好的支持“无连接”操作的性能,但DMSP很大程度上仅限于单个应用程序;IMAP提供了POP和DMSP的扩展集并提供对远程邮件访问的三种支持方式 :离线、在线和无连接。现在有的邮件服务提供商已经支持IMAP协议,其功能与POP协议相比要方便多了, POP协议支持“离线”邮件处理。其具体过程是:邮件发送到服务器上,电子邮件客户端调用邮件客户端程序以连接服务器,并下载所有未阅读的电子邮件。这种离线访问模式是一种存储转发服务,将邮件从电子邮件服务器送到个人终端机上。一旦邮件发邮到客户机上,邮件服务器上的邮件将会被删除。

    POP3并不支持对服务器上邮件进行扩展操作,此过程由更高级的IMAP4来完成。POP3使用TCP作为传输协议。例如,我们可以直接在邮件客户端软件(Outlook Express等)对远程邮件进行操作,比如,移动、删除等。

    展开全文
  • 流媒体及流媒体传输协议简介

    千次阅读 多人点赞 2019-06-01 22:26:10
    流媒体(streaming media):是指将一连串的媒体数据压缩后,经过网上分段发送数据,在网上即时传输影音以供观赏的一种技术与过程,此技术使得数据包得以像流水一样发送;如果不使用此技术,就必须在使用前下载整个...
  • 文件传输协议介绍

    万次阅读 2019-06-11 16:23:30
    文件传输协议介绍 文件传输协议是一种极为普遍的档案分享服务,让你可以将你的档案从储存装置传送到ASUSTOR NAS。ASUSTOR NAS 所支援的文件传输协议可分为: CIFS (网络文件共享系统) 通常是指 SMB,SAMBA 或 ...
  • 数据传输协议汇总

    千次阅读 2021-04-09 09:14:22
    FTP(文件传输协议) 对于业务文件传输,FTP可能是第一个想到的。 FTP是为单个文件传输和批量文件传输而构建的。它已经存在了一段时间,因此您可能不会在互操作性方面遇到问题。这意味着,您的贸易伙伴将永远有很大的...
  • 视频传输协议总结、码率

    万次阅读 2018-04-21 09:08:31
    根据以上特点知,使用UDP协议传输视频相对TCP协议更理想。UDP是User Datagram Protocol的简称,中文名是用户数据报协议,是OSI参考模型中一种无连接的传输协议。正式通信前不必与对方先建立连接,直接向接收方...
  • Android中的App网络传输协议

    千次阅读 2017-12-05 19:44:41
    这里首先需要明确一点的是什么是网络传输协议呢?这里首先套用一段百度百科的定义:  网络传输协议或简称为传送协议(Communications Protocol[1] ),是指计算机通信的共同语言。现在最普及的计算机通信为网络...
  • 几种常见音视频传输协议使用总结

    千次阅读 2020-10-31 22:55:34
    RTMP是Real Time Messaging Protocol(实时消息传输协议)的首字母缩写。该协议基于TCP,是一个协议族,包括RTMP基本协议及RTMPT/RTMPS/RTMPE等多种变种。RTMP是一种设计用来进行实时数据通信的网络协议,主要用来在...
  • 网络摄像机之传输协议解析

    千次阅读 2019-06-20 11:03:05
    传输协议概述 网络摄像机又叫IP CAMERA(简称IPC)由网络编码模块和模拟摄像机组合而成。网络编码模块将模拟摄像机采集到的模拟视频信号编码压缩成数字信号,从而可以直接接入网络交换及路由设备。网络摄像机内置一...
  • 不经意传输协议-密码学

    千次阅读 2020-09-02 10:09:40
    不经意传输(oblivious transfer)是一个密码学协议,在这个协议中,消息发送者从一些待发送的消息中发送一条给接收者,但事后对发送了哪一条消息仍然oblivious(不知道),这个协议也叫茫然传输协议。 历史 第一种...
  • 电子邮件传输协议解析

    千次阅读 2021-01-12 14:43:10
    1.简单邮件传输协议 (Simple Mail Transfer Protocol, SMTP) 顾名思义,SMTP是一个相对简单的基于文本的协议。在此协议上指定一条消息的一个或多个接收者,然后消息文本就会被传输,可以很简单的通过telnet来测试一...
  • SRT、RTMP、NDI视频传输协议对比

    千次阅读 2021-03-22 17:35:23
    一、SRT和NDI两种低延时传输协议的比较 关于SRT: SRT是由Haivision和Wowza共同创建的互联网传输协议,是时下非常受欢迎的开源低延迟视频传输协议。使用SRT传输技术,能够成功实现普通互联网环境下、多地之间、...
  • 几种常用网络传输协议

    千次阅读 2018-12-07 16:19:00
    一、OSI模型 名称 层次 功能 物理层 1 实现计算机系统与网络间的物理连接 数据链路层 2 进行数据打包与解包,形成信息帧 网络层 3 提供数据通过的路由 传输层 4...
  • 文件传输协议FTP

    千次阅读 2018-05-11 14:48:31
    文件传输协议FTP(File Transfer Protocol)是因特网中使用最广泛的文件传输协议。FTP使用交互式的访问,允许客户指定文件的类型和格式(如指明是否使用ASCII码),并允许文件具有存取权限(如访问文件的用户必须经过授权...
  • 超文本传输协议HTTP,详解+实例!

    万次阅读 2018-07-09 11:16:09
    从层次的角度看,HTTP是面向事务的(Transaction-oriented)应用层协议,它规定了在浏览器和服务器之间的请求和响应的格式和规则,它是万维网上能够可靠交换文件(包括文本、声音、图像等各种多媒体文件)的重要基础...
  • SRT是由Haivision和Wowza共同创建的SRT联盟所发起的互联网传输协议,是一种开源、免费和应用灵活的规范,它的性能与专用的协议一样优秀,同时能够在不同制造商生产的产品之间工作。 SRT是时下非常受欢迎的开源低延迟...
  • 视频传输协议详解(RTMP、RTSP、HLS)

    万次阅读 2019-03-07 13:40:12
    作为构建直播平台的基础之一 -—— 传输协议,我们该如何选择呢?那么首先我们就要了解这些协议的原理及特点。 RTMP——Real Time Messaging Protocol(实时消息传输协议) RTMP是由Adobe公司提出...
  • ICMP 直接使用 IP 数据包传输,但 ICMP 并不被视为 IP 协议的子协议。常见的联 网状态诊断工具比如 ping、traceroute 都依赖于 ICMP 协议。描述 ICMP 的标准文档是 RFC792。 2:TCP(Transmission Control Protocol,...
  • 简单邮件传输协议SMTP

    万次阅读 2018-05-11 15:46:15
    1. SMTP协议概述SMTP(Simple Mail Transfer Protocol,简单邮件传输协议)是由源地址到目的地址传送邮件的一组规则,用来控制信件的中转方式。SMTP协议属于TCP/IP协议族,它使每台计算机在发送或中转信件时能...
  • CAN总线传输协议

    万次阅读 多人点赞 2019-06-29 22:12:57
    一、控制器局域网总线(CAN,Controller Area Network)是一种用于实时应用的串行通讯协议总线,它可以使用双绞线、同轴电缆或光纤来传输信号,因其高性能、高可靠性和高实时性等特点,已经成为了世界上应用最广泛的...
  • nanomsg笔记--通信协议与传输协议

    千次阅读 2020-04-05 17:18:24
    花了一段时间吧nanomsg的源码给编译了一遍,同时对里面的主要的协议进行了调试。 由于该项目是c写的,发现可读性太差... 注意,这里的传输协议不是规范的叫法,也并非tcp/ip协议的那个传输层协议,而是属于应用层...
  • KCP网络传输协议

    千次阅读 2021-10-24 09:34:44
    KCP - A Fast and Reliable ARQ Protocol,KCP 快速可靠网络传输协议 KCP力求在保证可靠性的情况下提高传输速度。kcp采取一系列措施尽量提高网络传输速率,在网络实时性和可靠性要求比较高的场景下,可以考虑kcp...
  • RTP(实时传输协议

    千次阅读 2019-01-17 17:30:12
    RTP(real-time transport protocol),实时传输协议。RTP在多点传送(多播)或单点传送(单播)的网络服务上,提供端对端的网络传输功能,适合应用程序传输实时数据,如:音频,视频或者仿真数据。RTP没有为实时...
  • 实时传输协议RTP/RTCP与SIP协议

    千次阅读 2020-02-18 16:59:08
    RTP(Real-time Transport Protocol):实时传输协议; RTCP(Real-time Transport Control Protocol):实时传输控制协议; 他们是IP协议族中用于实时语音,视频数据传输的标准协议。 RTP标准定义了两个子协议,RTP...
  • 网络传输协议都有什么

    万次阅读 2018-11-03 15:50:27
    常见的网络协议有TCP/IP协议、IPX/SPX协议、NetBEUI协议、Microsoft网络的文件和打印机共享。在局域网中用得的比较多的是IPX/SPX。用户如果访问Internet,则必须在网络协议中添加TCP/IP协议。 具体介绍如下: TCP...
  • 网络视频传输协议

    千次阅读 2018-01-04 08:58:11
    网络视频传输协议--RTP/RTCP/RTSP/SIP/SDP 之间关系 1、 RTP Real-time Transport Protocol,是用于Internet上针对多媒体数据流的一种传输层协议。RTP协议详细说明了在互联网上传递音频和视频的标准数据包格式。...
  • 蓝牙音频传输协议简介

    千次阅读 2019-06-04 11:04:26
    此协议为控制消息采用了AV/C 设备模式和命令格式,这些消息可以通过音频/视频控制传输协议 (AVCTP) 传输。  *OPP  蓝牙通信程序部分需采用用于设备之间传输数据对象OPP Profile: Object Push Profile由于...
  • 可靠数据传输协议-GBN 协议的设计与实现 首先最重要的代码:github地址 一、 实验目的 理解滑动窗口协议的基本原理;掌握 GBN 的工作原理;掌握基于 UDP 设计并实现一个 GBN 协议的过程与技术。 二、 实验内容 实现...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 878,776
精华内容 351,510
关键字:

传输协议

友情链接: 蝙蝠算法.rar