网络协议
SXM19940913sxm
这个作者很懒,什么都没留下…
展开
-
网络协议---RTP---NALU打包成RTP
nal_unit_type: 1~23----NALU包类型 24~31----RTP打包类型RTP包头RPT包头结构体:typedef struct { /**//* 1byte (0) */ unsigned char csrc_len:4;/* expect 0, csrc计数器,没啥用*/ unsigned char extension:1;/* e...原创 2020-08-23 15:21:31 · 387 阅读 · 0 评论 -
网络协议---UDP/RTP协议----接受一个UDP包并解析
本文中的程序是一个UDP/RTP协议流媒体数据解析器。该程序可以分析UDP协议中的RTP 包头中的内容,以及RTP负载中MPEG-TS封装格式的信息。通过修改该程序可以实现不同的UDP/RTP协议数据处理功能。原理MPEG-TS封装格式数据打包为RTP/UDP协议然后发送出去的流程如下图所示。图中首先每7个MPEG-TS Packet打包为一个RTP,然后每个RTP再打包为一个UDP。其中打包...原创 2020-08-04 15:04:33 · 570 阅读 · 0 评论 -
网络协议---ARP:地址解析协议
OSI参考模型 TCPIP协议栈应用层 ||表示层 HTTP、FTP||DNS 应用层会话层 ||传输层 TCP ||UDP 第四层传输层网络层 IP(ARP) 第三层网络层数据链路层物理层由于 IP 协议 中使用了 ARP 协议,因此通常将 ARP 协议归为网络层协议。但 ARP 协议的用途是从网络层使用的 I...原创 2019-10-24 10:14:33 · 502 阅读 · 0 评论 -
网络协议---TCP---Nagle算法&&延迟ACK
链接:https://www.nowcoder.com/questionTerminal/787f0b432012420cb2918b7e1ca37ab2来源:牛客网当有一个TCP数据段不足MSS,比如要发送700Byte数据,MSS为1460Byte的情况。nagle算***延迟这个数据段的发送,等待,直到有足够的数据填充成一个完整数据段。也许有人会问,这有什么影响呢?没有太大的影响,总体上来说,这种措施能节省不必要的资源消耗。但是要发送的总体数据很小时,这种措施就是拖后腿了。比如,用户请求一个网页,原创 2020-08-04 14:57:48 · 234 阅读 · 0 评论 -
网络协议---IP头和TCP头
IP头①版本号:指IP协议的版本。通信双方使用的IP协议版本必须一致,对于IPv4来说,就是4。②头长度:可表示的最大十进制数是15(?个int长度),注意首部长度字段所表示数的单位是32位字(也就是4字节),所以IP头部最大长度是60字节(最小20字节)。③Tos服务字段:该字段用8位表示。该字段一般情况下不使用。④IP报文总长度: IP数据报(首部+数据)整体占多少字节。该字段为16...原创 2020-08-04 14:21:42 · 502 阅读 · 0 评论 -
网络协议---TCP和UDP及其比较
TCP(Transmission Control Protocol,传输控制协议)和UDP(User Datagram Protocol,用户数据报协议)是运输层的两个主要协议,均是互联网的正式标准。它们的主要区别如下:1、TCP是面向连接的,UDP是无连接的。TCP通信前需要建立连接,类似于平时打电话时需要先拨号接通;而UDP没有传输前通知2、TCP提供可靠的服务,UDP尽最大努力交付。因此...原创 2020-03-05 13:46:44 · 114 阅读 · 1 评论 -
网络协议---UDP---实现可靠数据传输
UDP没有Delievery Garuantee,也没有顺序保证,所以如果你要求你的数据发送与接受既要高效,又要保证有序,收包确认等,你就需要在UDP协议上构建自己的协议。比如RTCP,RTP协议就是在UPD协议之上专门为H.323协议簇上的IP电话设计的一种介于传输层和应用层之间的协议。下面分别介绍三种使用UDP进行可靠数据传输的协议RUDP(Reliable User Datagra...原创 2020-08-04 13:51:54 · 535 阅读 · 0 评论 -
网络协议---TCP---TCP中的各种机制
1、确认应答机制(ACK)TCP将每个字节的数据都进行了编号,即为序列号。(TCP包的序列号为该包数据首个字节的序列号)每一个ACK都带有对应的确认序列号(=最新接收的字节数据的序列号+1,即接下来要接收字节数据的序列号=接下来要接收的数据包的序列号)2、超时重传1、重发的条件:发送者A在特定时间间隔内无法收到接收者B的ACK????数据包/ACK包 传输过慢or丢包2、B接收到重复数据,利用序列号丢弃重复数据3、重传计时器的时间设定: ①因网络环境不同而存在差异 ②设定过长会影原创 2020-07-19 19:24:10 · 1653 阅读 · 1 评论 -
网络协议---TCP---协议概述
TCP/IP提出了“协议端口”的概念,用于标识两个通信的进程。端口,就是在运输层与应用层的层间接口上设置的一个16位的地址量,用于指明运输层与应用层之间的服务访问点,为应用层进程提供标识。TCP/IP将端口分成两大类,一类称为熟知端口(保留端口),另一类称为自由端口(也称为一般端口)。所谓“熟知端口”是指这类端口代表什么是事先已规定好了的,并为所有用户进程都熟知,数值为0~1023。常见的有FT...原创 2019-09-23 15:13:42 · 584 阅读 · 0 评论 -
网络协议---TCP---socket bind listen accept listen函数 未决连接队列
网络通信—套接字 在学习linux编程时,我们知道套接字socket也是一种文件,用于进程间网络通信的文件类型,本质是内核创建的缓冲区。既然是文件,那么我们可以使用文件描述符引用套接字。与管道类似的,区别在于管道主要应用于本地进程间通信,套接字一般应用于网络进程间数据的通信,即通过网络连接起来的不同主机的进程之间进行数据通信。 传输层协议主要用于主机的进程与进程之间的相互通信,而网络层协...原创 2019-09-16 10:50:36 · 850 阅读 · 1 评论 -
网络协议---TCP---三次握手四次挥手
TCPUDP原创 2020-06-19 20:44:07 · 198 阅读 · 0 评论