当前位置: 首页 > news >正文

侯马市网站建设公司百度指数数据分析

侯马市网站建设公司,百度指数数据分析,蜗牛精灵seo,免费个人网站哪个好一.什么是Socket? Socket,又叫套接字,是在应用层和传输层的一个抽象层。它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。 socket分为流socket和数据报socket,分别基于tcp和udp实现。 SOCK_STREAM 有以下…

一.什么是Socket?

Socket,又叫套接字,是在应用层和传输层的一个抽象层。它把TCP/IP层复杂的操作抽象为几个简单的接口供应用层调用以实现进程在网络中通信。

 socket分为流socket和数据报socket,分别基于tcp和udp实现。

SOCK_STREAM 有以下几个特征:

  1. 数据在传输过程中不会消失;
  2. 数据是按照顺序传输的;
  3. 数据的发送和接收不是同步的。

UNIX/Linux 程序在执行任何形式的 I/O 操作时,都是在读取或者写入一个文件描述符。一个文件描述符只是一个和打开的文件相关联的整数,它的背后可能是一个硬盘上的普通文件、FIFO、管道、终端、键盘、显示器,甚至是一个网络连接

请注意,网络连接也是一个文件,它也有文件描述符!你必须理解这句话。

与 UNIX/Linux 不同的是,Windows 会区分 socket 和文件,Windows 就把 socket 当做一个网络连接来对待,因此需要调用专门针对 socket 而设计的数据传输函数,针对普通文件的输入输出函数就无效了。

tcpserver代码:

#include "socket.hpp"
#include <iostream>
#include <string>
#include <memory>int main()
{SocketInit socketInit;//创建监听套接字SOCKET sListen = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if (sListen == SOCKET_ERROR){std::cout << "监听失败" << std::endl;}//绑定套接字sockaddr_in sock_in;sock_in.sin_family = AF_INET;sock_in.sin_port = htons(1234);sock_in.sin_addr.S_un.S_addr = INADDR_ANY;int ret = bind(sListen, (sockaddr*)(&sock_in), sizeof(sock_in));if (ret == SOCKET_ERROR){std::cout << "绑定套接字失败" << std::endl;closesocket(sListen);return -1;}//if (listen(sListen, 10) == SOCKET_ERROR){std::cout << "监听失败" << std::endl;return -1;}sockaddr_in sock_client;int nlen = sizeof(sockaddr_in);//接受客户端的连接SOCKET sClient = accept(sListen, (sockaddr*)(&sock_client), &nlen);if (sClient == SOCKET_ERROR){std::cout << "接收客户端失败" << std::endl;closesocket(sListen);return -1;}//std::cout << "与客户端连接成功...." << std::endl;while (true) {char buff[1024] = { 0 };int result = recv(sClient, buff, 1024, 0);if (result > 0) {std::cout << "接收到了数据" << buff <<std::endl;}else{std::cout << "客户端断开连接" << std::endl;break;}}closesocket(sListen);getchar();return 0;
}

client代码:

#define _WINSOCK_DEPRECATED_NO_WARNINGS
#include "socketinit.hpp"
#include <iostream>
#include <string>
#include <memory>
#include <WS2tcpip.h>int main()
{SocketInit socketInit;//创建套接字SOCKET sClient = socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);if (sClient == SOCKET_ERROR){std::cout << "创建失败" << std::endl;}//绑定套接字sockaddr_in sock_in;sock_in.sin_family = AF_INET;sock_in.sin_port = htons(1234);sock_in.sin_addr.S_un.S_addr = inet_addr("192.168.152.1");int ret = connect(sClient, (sockaddr*)(&sock_in), sizeof(sock_in));if (ret == SOCKET_ERROR){std::cout << "连接服务器失败" << std::endl;closesocket(sClient);return -1;}while (true) {char buff[1024] = { 0 };gets_s(buff, 1024);int result = send(sClient, buff, strlen(buff), 0);}closesocket(sClient);getchar();return 0;
}

http://www.khdw.cn/news/54851.html

相关文章:

  • 自己建网站百度到吗如何在百度上推广自己
  • ag娱乐建设网站搭建网站要多少钱
  • 衡水景县专业做淘宝网站公司如何优化关键词搜索
  • 那种漂亮的网站怎么做的一个品牌的策划方案
  • 做外单阿里的网站企业品牌推广网站
  • 网上电影网站怎么做的日本网络ip地址域名
  • 做网站需要会什么 知乎友情链接购买网站
  • 我想建立个网站数据怎么办百度客服24小时电话
  • 上海建网站工作室网络优化有前途吗
  • 在互易上做的网站如何修改商城推广
  • 上海青浦做网站公司请简述网络营销的特点
  • 做网站挂谷歌广告赚钱吗贵阳网站建设制作
  • 网页设计与网站建设期末考试试卷网络推广公司方案
  • 购物返利网站怎么做网站百度收录突然消失了
  • 绍兴cms建站模板代理怎么引流推广
  • 公司做网站的费用计什么科目优化电池充电什么意思
  • 泗洪网页设计seo实战密码
  • 套餐型网站建设合同事件营销的概念
  • 番禺做网站系统公司软文推广
  • 网站服务器选购近期重大新闻
  • wordpress关注插件网页优化包括什么
  • 沈阳网站建设发布网站怎么优化seo
  • 公安机关网站备案流程图项目推广计划书
  • 怎么样自己做网站营销策略有哪几种
  • 营销型网站建设实战公司怎么在百度上推广
  • 侦探公司做网站的资料的网站建设
  • 山西省住房城乡建设厅网站商家怎么入驻百度
  • 网站建设策划书2024很有可能再次封城吗
  • 网络运维工程师需要学什么seo是什么意思电商
  • asp 网站名字市场营销策略