textbox

IT博客 联系 聚合 管理
  103 Posts :: 7 Stories :: 22 Comments :: 0 Trackbacks

12 2009 档案

     摘要: UDP和TCP的对比:

TCP优缺点:

优点:
1.TCP提供以认可的方式显式地创建和终止连接。
2.TCP保证可靠的、顺序的(数据包以发送的顺序接收)以及不会重复的数据传输。
3.TCP处理流控制。
4.允许数据优先
5.如果数据没有传送到,则TCP套接口返回一个出错状态条件。
6.TCP通过保持连续并将数据块分成更小的分片来处理大数据块。—无需程序员知道

缺点: TCP在转移数据时必须创建(并保持)一个连接。这个连接给通信进程增加了开销,让它比UDP速度要慢。

UDP优缺点:
1.UDP不要求保持一个连接
2.UDP没有因接收方认可收到数据包(或者当数据包没有正确抵达而自动重传)而带来的开销。
3.设计UDP的目的是用于短应用和控制消息
4.在一个数据包连  阅读全文
posted @ 2009-12-26 12:15 零度 阅读(476) | 评论 (0)  编辑

     摘要: 1. 服务器必须准备好接受外来的连接,这通过调用socket、bind和listen函数完成,称为被动打开(passive open);
2. 客户通过调用connect进行主动打开(active open),这引起客户TCP发送一个SYN分节(表示同步),它告诉服务器客户将在(待建立)连接中发送的数据的初始序列号。一般情况下SYN分节不携带数据,它只含有一个IP头部、一个TCP头部以及可能有的TCP选项;
3. 服务器必须确认客户的SYN,同时自己也得发送一个SYNV分节,它含有服务器将在同一连接中发送数据的初始序列号。服务器以单个分节向客户发送SYN和对客户SYN的ACK;
4. 客户必须确认服务器的SYN。
  阅读全文
posted @ 2009-12-26 12:04 零度 阅读(292) | 评论 (0)  编辑

     摘要: 距离上次写东西已经快一个月了。这个月里由于工作和游戏的原因很少给自己充电了。唉!!用不了多久又把学来的东西还回去了。
今天写这个还是由于工作原因写的。公司要写一个socket的程序用于监控个个分店的数据。
Socket 编程,一个跨越语言统一编程方式。不论在windows和linux平台上的编程原理都是相似的。

首先先熟悉一些概念,
在现实生活中要实现信息传递就要靠沟通(通讯)。
通讯有两种方式: 广播通讯,点对点通讯 。
广播通讯
优点:能实现一对多点传递信息,无需知道对方的地址(身份),也无需知道有多少接收点可以接收到信息。
缺点:不能保证每个接受方都能受到信息。 安全性不高,任何接收点都有可能接收到信息,通常需要做较强额外数据加密类加强安全性。


点对点通讯
优点:安全性高。别人无法接收到发到目的接收方信息。可以监控到对方的接收状态
缺点:只能一次一对一的传递信息。

这两种通讯方式都有其的优点和缺点。结合使用才能发挥作  阅读全文
posted @ 2009-12-26 11:37 零度 阅读(255) | 评论 (0)  编辑

     摘要: 今天早上肚子痛,拉肚子了。納悶。搞的一整天都沒心情做事。   阅读全文
posted @ 2009-12-09 16:33 零度 阅读(142) | 评论 (0)  编辑

     摘要: 很早记接触这个缩写英文了。它是什么意思呢?要理解这个elf文件是还是比较容易的,如果要掌握它就花点功夫。ELF (Executable And Linkable)UNIX类操作系统中普遍采用的目标文件格式 。

首先要知道它有什么作用:
工具接口标准委员会TIS已经将ELF作为运行在Intel32位架构之上的各类型操作系统的可导出对象文件格式标准。ELF标准为开发者提供了一组横跨多运行环境的二进制接口定义来组织软件开发 ;
ELF 标准的目的是为软件开发人员提供一组二进制接口定义,这些接口可以延伸到多种操作环境,从而减少重新编码、重新编译程序的需要。接口的内容包括目标模块格式、可执行文件格式以及调试记录信息与格式等(以上的一段话引用网上的解释,比较抽象,好像说什么跨操作系统的二进制标准???呵呵 早不到北)

在看一下这段引用:

现在PC平台流行的可执行文件格式(Executable)主要是Windows下的PE(Portable Executable)和Linux的ELF(Executable Linkable For  阅读全文
posted @ 2009-12-06 11:46 零度 阅读(2088) | 评论 (1)  编辑

     摘要: linux正则表达式 grep egrep用法
shell命令执行的相应顺序
&&

令1 && 命令2 如果这个命令1执行成功& &那么执行这个命2

mv myfile myfile2 && echo "if you are seeing this then mv was success!"


||

如果| |左边的命令(命令1)未执行成功,那么就执行| |右边的命令(命令2)

mv myfile myfile2 && echo "if you are seeing this then mv was success! "



从一个审计文件中抽取第1个和第2个域,并将其输出到一个临时文件中,如果这一操作未成功,我希望能够收到一个相应邮件:

awk '{print$1,$2}' test3 >test2 || echo "sorry the extraction didn't work " | mail ro  阅读全文
posted @ 2009-12-03 14:36 零度 阅读(200) | 评论 (0)  编辑

     摘要: 刚接触sed命令真是要命。试图在它的命令行内找一些规则。让人深深的感觉到linux 不适合外行人用的原因。说真的一个命令搞得如此的复杂真是大大的提高了它的学习门槛。牢骚废话少了既然自己选择的路就要自己坚持的走下去。
下面是一些学习笔记。

何时使用 sed
在修改文件时 , 如果不断地重覆某些编辑动作 , 则可用 sed 自动一次执行这些编辑动作。例如要使 received
档内 1000 封电子信件内的发信人属名 "Tom" 改成 "John" , 此时只要在命令列上执行一简单的 sed 命令就可
把档内所有的 "Tom" 字串替换成 "Joh“ 等等


sed 的功能
sed 可删除(delete)、改变(change)、添加(append)、插入(insert)、合、交换文件中的资料行 , 或读入其它
档的资料到文件中 , 也可替换(substuite)它们其中的字串、或转换(tranfer)其中的字母等等。例如将文件中的
连续空白行删成一行、 "local" 字串替换成 "remo  阅读全文
posted @ 2009-12-02 16:26 零度 阅读(634) | 评论 (0)  编辑