Linux的网络协议栈实现可谓精确却不失精巧,不必说Netfilter,单单说TC就够了,但是有几处硬伤,本文做一个不完备的记录,就当是随笔,不必当真。0.查找的种类Linux协议栈作为一个纯软件实现,保留了硬件接口,但是本文不涉及硬件。 在Linux的协议栈实现中,由于没有硬件电路的固化,查找算法是难免的,比如路由查找,邻居查找,conntrack查找,socket查找,不一而足。事...
分类:
编程语言 时间:
2014-11-09 13:59:08
阅读次数:
290
原始套接字SOCK_RAW实际上,我们常用的网络编程都是在应用层的报文的收发操作,也就是大多数程序员接触到的流式套接字(SOCK_STREAM)和数据包式套接字(SOCK_DGRAM)。而这些数据包都是由系统提供的协议栈实现,用户只需要填充应用层报文即可,由系统完成底层报文头的填充并发送。然而在某些...
分类:
其他好文 时间:
2014-11-08 23:30:38
阅读次数:
298
7.1 BccmdBccmd是用来和CSR的芯片进行BCCMD(Bluecore command protocol)通讯的一个工具。BCCMD并非蓝牙协议栈的标准,而是CSR芯片的专属协议Bccmd的调用格式为:bccmd [-t ] [-d ] []Tansport类型包括 HCI USB...
分类:
其他好文 时间:
2014-11-06 14:19:59
阅读次数:
223
这个问题虽然简单,却困扰了差不多一个星期,归根结底还是自己对协议栈的不熟悉。 废话不多说! 假如组网后,协调器需要执行的任务是:组播,终端要执行的任务是:单播。那协议栈是怎么做到协调器只执行组播的任务,而不知执行单播的任务,终端又是怎样只执行单播的任务而不执行组播的任务呢? 下面是官方给出...
分类:
其他好文 时间:
2014-10-28 23:39:32
阅读次数:
440
之前的博文中已经介绍过W5500EVB 在TCP模式下的两种(Server及Client)数据传输的实现过程,那么传输控制协议中,UDP也是非常常用的,这种无连接的协议在更多场合为用户提供了便捷,比如发电子邮件,QQ聊天发收消息等…好,那今天就学习一下,UDP模式在W5500EVB上的简单实现。...
分类:
其他好文 时间:
2014-10-28 12:23:34
阅读次数:
397
Android平台提供了对蓝牙网络协议栈的支持,它允许设备通过无线的方式与其它设备进行数据交换。应用程序框架通过Android Bluetooth APIs提供了对蓝牙功能的访问。这些API允许应用以无线的方式连接其它蓝牙设备,启用点对点或者多点对多点的无线功能。使用蓝牙的API,Android应用程序可以执行以下工作:
* 扫描其它蓝牙设备
* 查询本地蓝牙适配器以配对蓝牙设备
* 建...
分类:
移动开发 时间:
2014-10-27 15:37:04
阅读次数:
430
TCP/IP四层模型TCP/IP参考模型 ISO制定的OSI参考模型的过于庞大、复杂招致了许多批评。与此对照,由技术人员自己开发的TCP/IP协议栈获得了更为广泛的应用。如图2-1所示,是TCP/IP参考模型和OSI参考模型的对比示意图。图2-1 TCP/IP参考模型 2.1 TCP/IP...
分类:
其他好文 时间:
2014-10-25 17:18:13
阅读次数:
198
PJSIP是一个开源的SIP协议栈。它支持多种SIP的扩展功能,可说算是最目前流行的SIP协议栈之一了。它实现了SIP、SDP、RTP、STUN、TURN和ICE。PJSIP作为基于SIP的一个多媒体通信框架提供了非常清晰的API,以及NAT穿越的功能。PJSIP具有非常好的移植性,几乎支持现今所有系统:从桌..
分类:
Web程序 时间:
2014-10-23 12:43:02
阅读次数:
310