www.cnblogs.com/ruiyqinrui

开源、架构、Linux C/C++/python AI BI 运维开发自动化运维。 春风桃李花 秋雨梧桐叶。“力尽不知热 但惜夏日长”。夏不惜,秋不获。@ruiY--秦瑞

python爬虫,C编程,嵌入式开发.hadoop大数据,桉树,onenebula云计算架构.linux运维及驱动开发.

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

http://www.creseek.cn/products-install/install_on_bsd_linux/ 中文检索

离线cloudera ecosystem components;

http://archive-primary.cloudera.com/cdh4/redhat/5/x86_64/cdh/4.6.0/RPMS/x86_64/

ARP数据包

ARP应答包类似,直接飘过;

子网隐码产生于路由表?;

 1.TCP段格式

TCP three-way-handshake;

      TCP establish connection:
client: syn 100(0)此处的0表示当前数据段不携带有效负荷,因此数据字节为0,(mss maximum segment size 1460)
server: syn 200(0),ack 101=c_syn+1;
client: ack 201=s_syn+1;(syn序号在网络通讯中用作临时地址,每发一个数据字节syn序号要加1,因此在接收端可以根据序号摆出数据包的顺序,检查是否存在丢包);

mss最大段尺寸,如果一个segment太大,经过ip网络层到达底层链路层封装成帧超过了最大帧size,则就会产生分片fragmentation,传输到接受端时需在ip层分片;

在建立连接的同时,双方协商了一些信息,例如双方发送序号的初始值、最大段尺寸

应用程序交给TCP协议发送的数据会暂存在TCP层的发送缓冲区中,发出数据包给对方之后,只有收到对方应答的ACK段才知道该数据包确实发到了对方,可 以从发送缓冲区中释放掉了,如果因为网络故障丢失了数据包或者丢失了对方发回的ACK段,经过等待超时后TCP协议自动将发送缓冲区中的数据包重发。


    TCP data transfer:
client: 101(20)(S response C syn),201(C response S syn);
server: 201(10),ack 121=c_101+20;
client: ack 211;

    TCP close connection:
client: fin,121(0),ack 211;
server: ack 122
server: fin,121(0),ack 122;
client: ack 122;

 Traffic/flow control

介绍UDP时我们描述了这样的问题:如果发送端发送的速度较快,接收端接收到数据后处理的速度较慢,而接收缓冲区的大小是固定的,就会丢失数据。TCP协议通过'''滑动窗口(Sliding Window)'''机制解决这一问题

Socket Programming;

热身概念:

在TCP/IP协议中,“IP地址+TCP或UDP端口号”唯一标识网络通讯中的一个进程,“IP地址+端口号”就称为socket。

TCP/IP协议最早在BSD UNIX上实现,为TCP/IP协议设计的应用层编程接口称为socket API

在TCP协议中,建立连接的两个进程各自有一个socket来标识,那么这两个socket组成的socket pair就唯一标识一个连接;

Network byte order:

 单线程大规模并发网络程序linux 2.5.44>>内核可选IO机制kqueue/epoll/select;

时监听多个阻塞的文件描述符(多网络连接),

哪个有数据到达就处理哪个,这样,不需要fork和多进程就可以实现并发服务的server;

Network Programming;

UDP不需要维护连接,程序逻辑简单

UDP协议是不可靠的,实际上有很多保证通讯可靠性的机制需要在应用层实现

UNIX Domain Socket(IPC internet process connections)与网络socket编程;

RS485单片机;

ZigBee无线通讯协议;

uCOS-II,vXworks嵌入式系统;

tornado-Web 服务器;

 

  

posted on 2014-03-28 17:09  秦瑞It行程实录  阅读(1402)  评论(0编辑  收藏  举报
www.cnblogs.com/ruiyqinrui