本文主要是为熟悉Linux下网络编程,实现一个简单的网络聊天室程序。 以Poll实现I/O复用技术来同时处理网络连接和用户输入,实现多个用户同时在线群聊。
其中客户端实现两个功能:一:从标准输入读入用户数据,并将用户数据发送到服务器;二:接收服务器发送的数据,并在标准输出打印。
服务端功能为:接收客户端数据,并将客户数据发送到登录到该服务端的所有客户端(除数据发送的客户端外)。...
分类:
其他好文 时间:
2015-03-20 22:08:22
阅读次数:
186
单播用于两个主机之间的端对端通信,广播用于一个主机对整个局域网上所有主机上的数据通信。单播和广播是两个极端,要么对一个主机进行通信,要么对整个局域网上的主机进行通信。实际情况下,经常需要对一组特定的主机进行通信,而不是整个局域网上的所有主机,这就是多播的用途。
IP 多播(也称多址广播或组播)技术,是一种允许一台或多台主机(多播源)发送单一数据包到多台主机(一次的,同时的)的 TCP/IP 网络技术。
多播地址就类似于 QQ 群号,多播组相当于 QQ 群,一个个的主机就相当于群里面的成员。
多播作为一点对多...
分类:
系统相关 时间:
2015-03-20 22:06:57
阅读次数:
272
网络编程中最基本的概念就是面向连接(connection-oriented)和无连接(connectionless)协议。尽管本质上来说,两者之间的区别并不难理解,但对那些刚刚开始进行网络编程的人来说,却是个很容易混淆的问题。这个问题与上下文有些关联:很显然,如果两台计算机要进行通信,就必须以某种形式“连接”起来,那“无连接通信”又是什么意思呢?
答案是:面向连接和无连接指的都是协议。也...
分类:
系统相关 时间:
2015-03-19 16:24:43
阅读次数:
176
接收到帧时通知驱动程序
在网络环境中,设备(网卡)接收到一个数据帧时,需要通知驱动程序进行处理。有一下几种通知机制:
轮询:
内核不断检查设备是否有话要说。(比较耗资源,但在一些情况下却是最佳方法)
中断:
特定事件发生时,设备驱动程序代表内核指示设备产生硬件中断,内核中断其它活动满足设备的需要。多数网络驱动程序使用中断。
中断期...
分类:
系统相关 时间:
2015-03-19 14:51:14
阅读次数:
200
(一)Linux网络编程--网络知识介绍Linux网络编程--网络知识介绍客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端和服务器端. 客户端 在网络程序中,如果一个程序主动和外面的程序通信,那么我们把这个程序称为客户端程序。 比如我们使用ftp程序从另外....
分类:
系统相关 时间:
2015-03-17 20:05:26
阅读次数:
300
网络命令 历史上最早的即时通信1 write linzhiling (内容) ctrl+D结束 这样一封信就写出去了,注意:只有用户在线才可以发送2 wall (write all) 给所有的用户写信3 ping命令 ping 192.168.1.1 注意:主要看丢包率,丢包率高说明...
分类:
系统相关 时间:
2015-03-17 12:07:59
阅读次数:
234
http://www.cnblogs.com/RascallySnake/archive/2012/01/04/2312564.html(一)Linux网络编程--网络知识介绍Linux网络编程--网络知识介绍客户端和服务端 网络程序和普通的程序有一个最大的区别是网络程序是由两个部分组成的--客户端...
分类:
系统相关 时间:
2015-03-17 00:44:50
阅读次数:
331
linux的网卡配置文件在"/etc/sysconfig/network-script/"目录下。DEVICE=eth0
HWADDR=00:0C:29:DC:BF:57
TYPE=Ethernet
UUID=8bb9e970-45fd-4007-8333-0ef5000e9603
ONBOOT=no
NM_CONTROLLED=yes
BOOTPROTO=dhcp常用配置网卡的命令ifupeth0#打开eth0网卡ifdowneth#关闭eth0网卡..
分类:
系统相关 时间:
2015-03-16 06:29:07
阅读次数:
182