ServerClient的传输模式.pptVIP

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
ServerClient的传输模式.ppt

Socket () and TCP client-server Outline TCP client-server 架構和TCP socket TCP socket function TCP client-server建構流程圖 TCP client-server TCP socket function 建立和連結函數:socket , bind 建立 listening socket: listen 接收連線要求函數:accept 連線建立和中断函數:connect , close 讀寫(I/O):read , write sock = socket(AF_INET, SOCK_STREAM, 0); 1.開啟 Socket介面:Socket 就如同傳輸管道的出入口,建立傳輸應用的兩端點須各自開啟一Socket,往後的資料傳送,均依賴 read(送入此Socket)或 write (由Socket讀出) 資料。需給AF_INET(socket family)、SOCK_STREAM (socket type)、protocoltype等參數。 (2/5) 2.Binding Socket地址:Socket 出入口需Binding到TCP address,網路上的電腦主 機才可以依據使用者所指定的TCP address,建立資料傳送的通道。TCP address 包含IP address (如11) 及TCP Port number。我們熟悉的網路應用: telnet 11 23與ftp 11 21,均需依據所指定的 host IP與 Port,建立連接、傳輸資料。 msgsock = accept(sock,(struct sockaddr *)0, (int *)0); connect(sock, (struct sockaddr *)server, sizeof server) 3.Connection的建立:電腦主機可以使用Binding TCP address後的Sock et,建立資 料傳送通道。Server/Client 的傳輸模式,Server 端需呼叫accept() 功能,等待Client的連接建立要求。Client端則呼叫connect()功能,要求與Server主機建立連接通道。 rval = read(msgsock,buf,sizeof(buf)) wrval=write(msgsock,buf,sizeof(buf)) 4.傳輸網路資料:Client與Server主機間成功地建立連接通道後。兩端均可藉由各自的Socket出入口,read 或write 資料到對方。 close(sock) 5.關閉 Socket介面:當應用程式不再使用Socket 出入口做資料傳送時 ,需關閉Socket 參考網址 .tw/primary/info_edu/cy_sa/report/more/8611a8.htm .tw/course/network/netprog/sockets/socket.htm * * client server 建立socket 通知server 要求連線 連使用線成功後I/O函數和SERVER 互傳訊息 建立socket 連結socket 開啓listening socket 等待client 連線要求 收到連線要求後並確定連線成功使用I/O函數互傳訊息 (1/5) name.sin_family = AF_INET; name.sin_addr.s_addr = INADDR_ANY; name.sin_port = 5000; bind(sock, (struct sockaddr *)name, sizeof name) (3/5) (4/5) (5/5) Socket() Bind() Listen() Read() Close() Read() Write() Connect() Socket() Write() Read() Close() Accept() client server 連線建立 要求資料 回覆資料 告知傳輸結束 連線結束恢復等待 等待連線要求 *

文档评论(0)

busuanzi + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档