- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
TCP编程的服务器端一般步骤是创建一个socket,用函数socket();设置socket属性,用函数setsockopt(); * 可选绑定IP地址、端口等信息到socket上,用函数bind();开启监听,用函数listen();接收客户端上来的连接,用函数accept();收发数据,用函数send()和recv(),者read()和write();关闭网络连接;关闭监听;TCP编程的客户端一般步骤是:创建一个socket,用函数socket();设置socket属性,用函数setsockopt();* 可选绑定IP地址、端口等信息到socket上,用函数bind();* 可选设置要连接的对方的IP地址和端口等属性;连接服务器,用函数connect();收发数据,用函数send()和recv(),或者read()和write();关闭网络连接;UDP编程的服务器端一般步骤是:创建一个socket,用函数socket();设置socket属性,用函数setsockopt();* 可选绑定IP地址、端口等信息到socket上,用函数bind()循环接收数据,用函数recvfrom();关闭网络连接;UDP编程的客户端一般步骤是:创建一个socket,用函数socket();设置socket属性,用函数setsockopt();* 可选绑定IP地址、端口等信息到socket上,用函数bind();* 可选设置对方的IP地址和端口等属性;发送数据,用函数sendto();关闭网络连接;
telnettelnet是一个用来远程控制的程序,但是我们完全可以用这个程序来调试我们的服务端程序的. 比如我们的服务器程序在监听8888端口,我们可以用telnet localhost 8888来查看服务端的状况
数据结构1、地址结构struct sockaddr_in { short int sin_family; /* 地址族 一般为AF-INET */ unsigned short int sin_port; /* 端口号 */ struct in_addr sin_addr; /* IP地址 */ unsigned char sin_zero[8]; /* 填充0 以保持与struct sockaddr同样大小 使用memset()或bzero()来填充*/ }; struct sockaddr { ??????unsigned short sa_family; /* 地址族, AF_xxx */ ??????? char sa_data[14]; /* 14 字节的协议地址 */
???????? ?};
2、DNS结构struct hostent { char *h_name; /* 主机的官方域名 */ char **h_aliases; /* 一个以NULL结尾的主机别名数组 */ int h_addrtype; /* 返回的地址类型,在Internet环境下为AF-INET */ int h_length; /*地址的字节长度 */ char **h_addr_list; /* 一个以0结尾的数组,包含该主机的所有地址*/ };操作函数socket:
创建socket 描述符
int socket(int domain, int type, int protocol); domain=AF_INET,socket的类型,type=SOCK_STREAM 或SOCK_DGRAM,分别表示TCP连接和UDP连接;protocol=0。返回一个整型socket描述符。 2.bind: 将socket描述符与你本机上的一个端口相关联(仅用于服务器)
int bind(int sockfd,struct sockaddr *my_addr, int addrlen);
Sockfd是一个socket描述符my_addr是一个指向包含有本机IP地址及端口号等信息的sockaddr类型的指针;addrlen=sizeof(struct sockaddr)。 返回:成功=0;失败=-1,errno=错误号。可以用下面的赋值自动获得本机IP地址和随机获取一个没有被占用的端口号: my_addr.sin_port = 0; /* 系统随机选择一个未被使用的端口号 */ my_addr.sin_addr.s_addr = INADDR_ANY; /* 填入本机IP地址 */Connect: 与远端服务器建立一个TCP连接 (用于客户端)int connect(int sockfd, struct sockaddr *serv_addr, int addrlen); Sockf
您可能关注的文档
- TASK2正文段五大功能段落.doc
- TAPBlock.doc
- task1-重拍版.doc
- Task4练习参考答题要点.doc
- Task6练习参考答题要点.doc
- TaskA-1写长法.doc
- Taskone11111.doc
- Task1出国读大学的好处.doc
- TAB3p5210root详细过程-蓝枫献上.doc
- Task1piechart.doc
- 公司组织结构部门职能岗位职责.ppt
- 基础写作日记作文课件2022届高考英语专题复习.ppt
- 四年级下册12月第1版Storytime最新PPT课件-临汾市优质课.ppt
- 押题密卷一解析版-冲刺2022中考英语必考题型终极押题重庆专用原版初中精品试题.docx
- 人教版英语九年级全册Unit 1-9单元基础背默训练含答案.docx
- 2024版人教版八年级上册期末高频上册核心必背知识点清单默写版+背诵版.pdf
- 2024版人教版八年级下册英语全册单词背诵版.pdf
- 自动桁架受力分析与结构优化教程.pdf
- 测试点卡VT-BU2技术参数与替换型号说明.pdf
- Sonird ReMix秃鹫模型应用指南.pdf
最近下载
- 口腔科临床诊疗规范与操作流程详细版.docx VIP
- DB44T1988-2017 广东终身教育资历框架等级标准.pdf VIP
- 2025年国际心肺复苏指南-最新指南课件.pptx
- GB_T3098.13-1996(齐全版2022年-2023年的).docx VIP
- (完整版)《西游记》名著复习资料.doc VIP
- VDA6.3-2023版过程审核-各部门准备资料及审核和应审方法.xlsx VIP
- 气动抗震压力变送器(中).pdf VIP
- 《建筑施工企业安全生产管理机构设置及专职安全生产管理人员配备办法》知识培训.pptx VIP
- 肝癌患者的围手术期护理.pptx VIP
- 名著导读《经典常谈》章节内容概述梳理.docx VIP
原创力文档


文档评论(0)