wintree的专栏

专注于Linux系统编程,网络编程,高性能服务器技术,c/c++技术学习

linux内核学习之网络篇——IP和TCP结构体源码

今天只是看一下IP协议的结构体和TCP的结构体所控制的字段。 首先看一下IP的字段,就是传说中ip协议中的包头字段。   struct iphdr { #if defined(__LITTLE_ENDIAN_BITFIELD) __u8 ihl:4, version:4; #elif ...

2012-09-30 01:03:17

阅读数:4278

评论数:0

linux内核学习之网络篇——套接字缓冲区

在内核分析网络分组时,底层协议的数据将传输到跟高的层。而发送数据的时候顺序是相反的。每一层都是通过加(首部+净荷)传向跟底层,直至最终发送。 这些操作决定了网络的的性能。 就如下图所示   linux因此设计了一个结构体   如下代码 /** * struct sk_buff...

2012-09-29 01:00:14

阅读数:3309

评论数:0

linux内核学习之网络篇——通过socket通信

通过网卡,让我们能达到通信,对unix是相当的复杂,组要是socket每一层都是用了不同的通信协议,需要好多设置好多的选项。因此在/dev目录下,并没有网卡对应的文件。   socket不仅可以用于各种传输协议的IP的连接。也可以用于内核支持的所有其他地址和协议类型。 套接字是使用socke...

2012-09-26 23:40:31

阅读数:4191

评论数:1

linux内核学习之网络篇——TCP/IP概述

1.ISO 参考模型 因特网协议栈中的层 人们已经进行了一些讨论关于如何将TCP/IP参考模型映射到到OSI模型。由于TCP/IP和OSI模型组不能精确地匹配,还没有一个完全正确的答案。 另外,OSI模型下层还不具备能够真正占据真正层的位置的能力;在传输层和网络层之间还需要另外一个层(网络互...

2012-09-26 21:20:02

阅读数:2136

评论数:2

linux内核学习之进程管理------task_struct结构体

今天随便看了一下代码,就把控制进程的数据结构拿出来了,2.6的可以0.11的复杂的多的多。struct task_struct { volatile long state; /* -1 unrunnable, 0 runnable, >0 stopped */ struct thread...

2012-09-28 00:36:50

阅读数:2808

评论数:0

游戏服务器架构探讨

要描述一项技术或是一个行业,一般都会从其最古老的历史开始说起,我本也想按着这个套路走,无奈本人乃一八零后小辈,没有经历过那些苦涩的却令人羡慕的单机游戏开发,也没有响当当的拿的出手的优秀作品,所以也就只能就我所了解的一些技术做些简单的描述。一来算是敦促自己对知识做个梳理,二来与大家探讨的过程也能够找...

2012-09-26 22:56:43

阅读数:1693

评论数:0

最近工作生活的总结。

貌似,我已经很久没有更新文章,没有写过文章,但是并不能代表,我没有学习技术。 从上个月开始,我面临着换工作。从上一个东家离职,也是迫不得己。其实,本来不想这么快离职的。但是。。。原因心里清楚就OK,, 原来是一家做移动业务的公司,项目架构是那种传统的c/s架构的。因此我做的这块就是se...

2012-09-25 22:50:45

阅读数:1206

评论数:0

TCP头校验和计算算法详解

我就不管是按“位”(bit)取反相加,还是 按“1的补码”相加了,总之 就是把需要进行校验的“字串”加(+)起来,把这相加的 结果取反当做 “校验和” (Checksum), 比如,相加的结果是0101,那么“校验和”就 是1010,验证的时候呢,就是 0101+1010 = 1111 ,取...

2012-09-20 00:07:48

阅读数:2455

评论数:1

提示
确定要删除当前文章?
取消 删除
关闭
关闭