- 博客(94)
- 收藏
- 关注
原创 RTSP协议
Session ID 是由服务器在SETUP的回应中选择的,客户端一当得到Session ID后,在以后的对Session 的操作请求消息中都要包含Session ID.对每个包含一个给定序列号的请求消息,都会有一个相同序列号的回应消息。负责对流媒体数据进行封包并实现媒体流的实时传输,即它按照RPT数据包格式来封装流媒体数据,并利用与它绑定的协议进行数据包的传输。RTCP也是用UDP来传送的,但RTCP封装的仅仅是一些控制信息,因而分组很短,所以可以将多个RTCP分组封装在一个UDP包中。
2024-02-21 14:58:16 862
原创 webench源码阅读
webbench是一款用C编写的开源工具,主要用来在Linux下进行网站压力测试。最多可以模拟3万个连接去测试网站的负载能力,并可以设置运行的客户端数、测试时间、使用的http协议版本、请求方法、是否需要等待服务器响应等选项,最后统计每分钟相应请求次数(paga/min)和每秒钟传输数据量(byte/sec),以及请求成功数和失败数,表现测试网站的压力承载能力。
2024-01-19 16:51:44 439
原创 epoll_socket
如果对于一个非阻塞 socket,如果使用 epoll 边缘模式去检测数据是否可读,触发可读事件以后,一定要一次性把 socket 上的数据收取干净才行,也就是说一定要循环调用 recv 函数直到 recv 出错,错误码是EWOULDBLOCK(EAGAIN 一样)(此时表示 socket 上本次数据已经读完);如果使用水平模式,则不用,你可以根据业务一次性收取固定的字节数,或者收完为止。
2024-01-24 18:03:38 383
原创 Linux开发
1.__BASE_FILE__ // 正在编译的源文件名2.__FILE__ // 所在文件名3.__LINE__ // 行号4.__FUNCTION__ // 函数名5.__func__ // 同__FUNCTION__6.__DATE__ // 日期7.__TIME__ // 时间8.__INCLUDE_LEVEL__ // 包含层数,从0开始9.__cplusplus // C++编译器将其定义为1,10. // C编译器不定义该宏。
2024-01-03 18:52:39 438
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人