TCP/IP网络编程
zl908760230
遇到问题首先得学会自己找答案!
展开
-
计算器服务器端/客户端示例
实现:1)客户端连接服务器端后以1字节整数形式传递待算数字个数。2)客户端向服务器端传递的每个整数型数据占用4字节3)传递整数型数据后接着传递运算符。运算符信息占用1字节4)选择字符+ - * 之一传递5)服务器端以4字节整数型向客户端传回运算的结果6)客户端得到的运算结果后终止与服务器端的连接、数据格式:原创 2017-04-17 19:31:52 · 1432 阅读 · 0 评论 -
基于TCP/IP的迭代回声服务器/客户端
服务器/客户端的实现顺序: 需要注意的是:客户端只有等到服务器调用listen函数后才能调connect函数。同时要清楚,客户端调用connect函数前,服务器端有可能率先调用accept函数。当然,此时服务器在调用accept函数时进入阻塞状态,直到客户端调用connect函数为止。迭代服务器/客户端:插入循环原创 2017-04-17 12:11:19 · 987 阅读 · 0 评论 -
基于windows的I/O复用
I/O复用技术主要就是select函数的使用。 使用select函数可以同时监视多个文件描述符。当然,监视文件描述符可以视为监视套接字。此时首先需要将要监视的文件描述符集中到一起。集中时也要按照监视项(接收、传输、异常)进行区分,即按照上述3种监视项分成3类。 使用fd_set数组变量执行此项操作,原创 2017-04-20 15:09:47 · 2995 阅读 · 0 评论 -
windows下的socket(1)
winsock的初始化进行winsock编程时,首先必须调用WSAStartup函数,设置程序中用到的Winsock版本,并初始化相应版本的库。#includeint WSASartup(WORD wVersionRequested , LPWSADATA lpWSAData );//成功时返回0,失败时返回非零的错误代码值。 wVersionRe原创 2017-04-16 17:15:30 · 1168 阅读 · 0 评论 -
Socket编程
“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型转载 2017-04-16 13:45:32 · 237 阅读 · 0 评论 -
域名和网络地址
DNS是对IP地址和域名进行相互转换的系统,其核心是DNS服务器。一个IP地址可以对应多个域名。通过电脑的控制套输入如下指令:ping + 域名(如 www.baidu.com)就可以知到这一域名的IP地址。nslookup获得默认的dns服务器地址。计算机内置的默认DNS服务器并不知道网络上所有域名的IP地址信息。若该DNS服务器无法解原创 2017-04-19 19:49:18 · 329 阅读 · 0 评论 -
基于TCP的半关闭
windows的closesocket函数意味着完全断开连接(单方面断开连接)。完全断开不仅指无法传输数据,而且也不能接受数据。因此,在某些情况下closesocket函数断开连接就显得不太适用。 为了解决这类问题,只关闭一部分数据交换中使用的流(half-close)的方法应运而生。断开一部分连接是指,可以传输数据但无法接收,或原创 2017-04-19 15:23:17 · 2502 阅读 · 0 评论 -
基于UDP的服务器端/客户端
如果只考虑可靠性,TCP确实比UDP好,但UDP在结构上比TCP更简洁。UDP不会发送类似TCP中的应答消息,也不会给数据包分配序号。因此,UDP的性能有时比TCP高出很多。另外,UDP的可靠性虽比不上TCP,但也不会像想象中那样频繁的发生数据损毁。如果在更重视性能而非可靠性的情况下,UDP是一种很好的选择。 TCP在不可靠的IP层进行流控制,而UDP缺少这种流控制机制。UDP和TCP的原创 2017-04-19 13:46:33 · 6551 阅读 · 0 评论 -
TCP原理
TCP套接字的数据收发无边界,服务器调用一次send函数传输的数据,客户端可以多次调用recv函数接受。那么经过第一次调用recv函数接受数据后剩下未接受的数据在何处呢?实际上,send函数调用后并非立即传输数据,而是将数据移入输出缓存,reacv函数也并非马上接受数据,而是从输入缓冲中读取数据。 调用send函数时,数据将移到输出缓冲,在适当原创 2017-04-19 10:29:23 · 520 阅读 · 0 评论 -
windows下简单的IOCP模型迭代回声服务器实例
#include#include#include#include#pragma comment(lib,"ws2_32.lib")#define BUF_SIZE 100#define READ 3#define WRITE 5using namespace std;typedef struct { //客户端信息 SOCKET hclientSocket; SOCK原创 2017-04-25 16:04:40 · 883 阅读 · 0 评论