Socket TCP and UDP 大文件传输
quwu_bjut
数据挖掘研究员
展开
-
解决TCP网络传输“粘包”问题
解决TCP网络传输“粘包”问题作者:杨小平 王胜开原文出处:http://www.ciw.com.cn/ 当前在网络传输应用中,广泛采用的是TCP/IP通信协议及其标准的socket应用开发编程接口(API)。TCP/IP传输层有两个并列的协议:TCP和UDP。其中TCP(transport control protocol,传输控制协议)是面向连接的,提供高可靠性服务。UDP(user data转载 2008-12-05 14:26:00 · 666 阅读 · 0 评论 -
同步、异步、阻塞和非阻塞的概念(学习select的资料)
同步、异步、阻塞和非阻塞的概念在进行网络编程时,我们常常见到同步、异步、阻塞和非阻塞四种调用方式。这些方式彼此概念并不好理解。下面是我对这些术语的理解。同步所谓同步,就是在发出一个功能调用时,在没有得到结果之前,该调用就不返回。按照这个定义,其实绝大多数函数都是同步调用(例如sin, isdigit等)。但是一般而言,我们在说同步、异步的时候,特指那些需要其他部件协作或者需要一定时间完成的任务。最转载 2008-12-11 10:38:00 · 893 阅读 · 0 评论 -
字节对齐详述
字节对齐详述字节对齐详述一、快速理解1. 什么是字节对齐?在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然边界(alignment)分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同。为了使CPU转载 2008-12-13 17:27:00 · 485 阅读 · 0 评论 -
流数据中出现'/0',strstr()函数出现错误,C++的字符串处理函数默认把'/0'作为结束符。
流数据中出现/0,strstr()函数出现错误,C++的字符串处理函数默认把/0作为结束符。自己写的char* searchstr(char*,char*)函数,可以定位流数据中的字符串位置,实现字符串查找:static char* searchstr(char* string1, char* string2) { int j = 0; int i = 0;原创 2008-12-18 10:09:00 · 1627 阅读 · 0 评论 -
TCP 和 UDP 协议发送数据包的大小(浅析)
MTU最大传输单元,这个最大传输单元实际上和链路层协议有着密切的关系,EthernetII帧的结构DMAC+SMAC+Type+Data+CRC由于以太网传输电气方面的限制,每个以太网帧都有最小的大小64bytes最大不能超过1518bytes,对于小于或者大于这个限制的以太网帧我们都可以视之为错误的数据帧,一般的以太网转发设备会丢弃这些数据帧。由于以太网EthernetII最大的数据帧是15原创 2008-12-19 15:10:00 · 8007 阅读 · 0 评论