版本:2.6.33.4
发送端 tcp_write_xmit 函数
/* This routine writes packets to the network. It advances the
* send_head. This happens as incoming acks open up the remote
* window for us.
*
* LARGESEND no...
分类:
其他好文 时间:
2014-06-05 04:15:28
阅读次数:
236
lwIP作为RTOS准标配的TCP/IP,在我们编写网络模块时,经常用到。
本移植笔记使用lwIP的版本为V1.4.1。
MDK: V4.0+
RTOS: μC/OS-II V2.91
Eval-Board: LPC1752
Ethernet: ENC28J60
移植lwIP到OS其实就是实现sys.h的过程。...
分类:
其他好文 时间:
2014-06-04 21:52:32
阅读次数:
635
description
用gdb debug linux kernel容易吗?其实要走到这步真的不容易啊,其实也难道是不难,就是要知道的东西太多了。用gdb debug linux kernel 可以有2中方式:UML和qemu方式,这里主要说qemu,从源码编译安装qemu很费劲。
准备环境
linux OS: Debian7.5-i386(当时最新的Wheezy,装在VMware...
分类:
数据库 时间:
2014-06-04 21:12:03
阅读次数:
670
看了erlang的一些开源网络框架RabbitMQ、Ranch,他们都使用多个进程同时accept一个socket。这种方式在使得socket端口监听的工作分担了更多的调度机会,但是,在erlang中,socket接受一个新连接后,如果想让另一个进程处理消息,就要显式的调用gen_tcp:controlling_process(Socket, Pid)。所以问题来了,erlang多个进程同时监听一个socket安全吗?文章将会重点讨论这个问题及对这个问题做优化。...
分类:
其他好文 时间:
2014-06-03 03:52:52
阅读次数:
218
TCP流量控制的目的是限制发送端的发送速率,使得接收方能够及时接收。TCP主要是通过滑动窗口来实现流量控制的。实际上,发送窗口的大小不仅受接收窗口rwnd的大小的限制,还受拥塞窗口cwnd窗口的限制,为了实现点到点的流量控制,本文假设拥塞窗口足够大(即网络链路比较流畅),仅考虑发送窗口swnd受接收窗口的限制。...
分类:
其他好文 时间:
2014-06-03 02:39:49
阅读次数:
543
HTTP协议学习总结一、建立连接方面HTTP/1.0
每次请求都需要建立新的TCP连接,连接不能复用。HTTP/1.1
新的请求可以在上次请求建立的TCP连接之上发送,连接可以复用。优点是减少重复进行TCP三次握手的开销,提高效率。注意:在同一个TCP连接中,新的请求需要等上次请求收到响应后,才能发...
分类:
其他好文 时间:
2014-05-31 20:49:01
阅读次数:
339
异常python的socket模块实际上定义了4种可能出现的异常:1)与一般I/O
和通信问题有关的socket.error;2)与查询地址信息有关的socket.gaierror;3)与其他地址错误有关的socket.herror;4)与在一个socket上调用settimeout()后,处理超时...
分类:
编程语言 时间:
2014-05-31 18:42:49
阅读次数:
220
在大部份的網路應用裡,TCP 似乎比 UDP 來的多許多,程式人員通常也是對撰寫 TCP
程式比較熟悉,這裡將整理一些 UDP 程式設計的說明,希望對大家有幫助。一開始先介紹三個最重要的類別,如下:DatagramPacket: UDP
的封包。DatagramSocket: 用來建立 UDP so...
分类:
其他好文 时间:
2014-05-31 18:40:47
阅读次数:
210
总结OSI中的层功能TCP/IP协议族应用层文件传输,电子邮件,文件服务,虚拟终端TFTP,HTTP,SNMP,FTP,SMTP,DNS,Telnet
等等表示层数据格式化,代码转换,数据加密没有协议会话层解除或建立与别的接点的联系没有协议传输层提供端对端的接口TCP,UDP网络层为数据包选择路由I...
分类:
其他好文 时间:
2014-05-31 18:18:44
阅读次数:
609