Socket () and TCP client-server

Slides:



Advertisements
Similar presentations
教育部 1 教育部技職司 南區: 2010 年 11 月 5 日 北區: 2010 年 11 月 8 日 中區: 2010 年 11 月 9 日 產學攜手合作計畫 政策宣導.
Advertisements

104 年度環保小學堂 經費編列注意事項 會計室 : 丁子芸 中華民國 103 年 10 月 22 日 會計室 : 丁子芸 中華民國 103 年 10 月 22 日.
當我已老 謹以此文獻給像我一樣流浪在外的子女們.
2015年12月14日-2015年12月20日 缩略版.
从生命伦理学角度 对转基因食品市场准入标准及道德评价标准的研究
指導老師:羅夏美 組別:第四組 組員: 車輛二甲 蔡中銘 車輛三甲 莊鵬彥 國企二甲 陳于甄 國企二甲 詹雯晴 資傳二乙 林怡芳
2.4 计算机网络基础 什么是计算机网络? 计算机网络有哪些功能? 计算机网络的发展历史? 计算机网络体系结构的内容? 计算机网络如何分类?
计算机网络(第 6 版) 第 6 章 应用层 青岛理工大学通信与电子工程学院.
第一次上机作业说明 业务系统说明 Socket编程技术 如何分析应用层协议 应用程序结构.
第二章 项目一:企业厂区与车间平面设计 1.
“网络问政”给九江新闻网 带来新的发展机遇 -- 九江新闻网 高立东 --.
马志强 软件学院501室 网络应用开发 马志强 软件学院501室
社会工作概论 个案工作 课程培训 深圳电大 赖小乐.
TCP Session Hijack 郭军权
前言.
Socket.
基于WinSock的邮件系统 1 设计目标: 1.1 SMTP发送邮件服务器(c语言) 1.2 POP3接受邮件服务器(c语言)
计算机网络实验介绍 信息网络实验室 2017/9/13 04:55:22.
传输层是整个协议层次的核心,其任务是在源机器和目标机器之间提供可靠的、性价比合理的数据传输功能,并与当前所使用的物理网络完全独立
Advanced Sockets Programming
TCP、UDP 通信实践 广州创龙电子科技有限公司 01 广州创龙电子科技有限公司
計中「多媒體與網路應用」短期訓練課程 FTP server 架設 (in Windows)
Java语言程序设计 清华大学出版社 第9章 网络通信.
網路安全技術期末報告 Proxy Server
TCP協定 (傳輸層).
Socket Programming in C
網路伺服器應用 Linux Server Andres, Wen-Yuan Liao
Socket Programming.
Socket 基本觀念.
TCP/IP Protocol Suite TCP/IP協定 第二組 投影片製作by簡嘉宏 綦凱宏 林睿敏 滕孟哲.
Socket Programming.
在一定程度上 人类的思维产生于 简单个体之间的相互作用 ——Marvin Minsky.
套接字API调用.
Windows 2003 server 進階介紹 麋鹿.
認識FTP檔案傳輸協定 建立我的部落格 Archie檔案檢索服務 Google搜尋密技 歷久彌新的老朋友-BBS Skype網路電話
考试题型 填空题(30) 选择题(20) 名词解释(10) 问答题(24) 计算题(16) 附加题(30) 成绩核算:
中国科学技术大学计算机系 陈香兰(0512- ) Autumn 2010
Echo Server/Client Speaker:Fang.
App Inventor2呼叫PHP存取MySQL
使用Windows2003 Server R2 伺服器架設暨網路原理.
第2章 套接字网络编程基础 2.1 UNIX套接字网络编程接口的 产生与发展 2.2 套接字编程的基本概念 2.3 面向连接的套接字编程
EBSCOhost App應用程式 安裝方式.
FTP檔案上傳下載 實務與運用.
IP, Port, Router and Port forward
網路安全技術 OSI七層 學生:A 郭瀝婷 指導教授:梁明章.
建立一 function s (type) 可以用來繪製cyclic-harmonic curves
Networking Games 程式設計 潘仁義 CCU COMM.
ISA Server 2004.
Web Server 王宏瑾.
Westmont College 网络应用软件 第一讲 (客户-服务器 概念, 协议端口的使用, 套接字API)
Network Application Programming(3rd Edition)
Advister: Quincy Wu Speaker: Chenglin Tsai Date:3/26
使用WireShark解析TCP封包 Computer Network Lab2.
NAT技术讲座 主讲:周旭 大唐电信科技股份有限公司光通信分公司 数据通信部.
课程建设汇报 方宝富 合肥工业大学
講員:游文志 排程系統教育訓練 後台管理系統 講員:游文志
面向非连接的 SOCKET编程 本节内容 视频提供:昆山爱达人信息技术有限公司 视频录制:yang 官网地址:
SOCKET( ).
目次检索 打印 下载 文字摘录 更换背景 多窗口阅读.
2019/5/3 JAVA Socket(UDP).
TYPE A 3702A設定 使用瀏覽器連線到閘道器的ip 例如:
ZigBee PRO教學系統 CC2530 實驗.
2019/5/20 JAVA Socket(UDP).
班級:博碩子一甲 授課老師:鐘國家 助教:陳國政
第10讲 Web服务.
助教:廖啟盛 JAVA Socket(UDP) 助教:廖啟盛
Internet课程设计 教师:陈 妍 朱海萍 西安交通大学计算机系
第十二章 Java网络编程 1.URL编程 2.Socket网络编程 3.Datagram网络编程.
Department of Computer Information Science, NCTU
Presentation transcript:

Socket () and TCP client-server

Outline TCP client-server 架構和TCP socket TCP socket function

TCP client-server client server 建立socket 連結socket 開啓listening socket 收到連線要求後並確定連線成功使用I/O函數互傳訊息 建立socket 通知server 要求連線 連使用線成功後I/O函數和SERVER 互傳訊息

TCP socket function 建立和連結函數:socket , bind 建立 listening socket: listen 接收連線要求函數:accept 連線建立和中断函數:connect , close 讀寫(I/O):read , write

sock = socket(AF_INET, SOCK_STREAM, 0); (1/5) 1.開啟 Socket介面:Socket 就如同傳輸管道的出入口,建立傳輸應用的兩端點須各自開啟一Socket,往後的資料傳送,均依賴 read(送入此Socket)或 write (由Socket讀出) 資料。需給AF_INET(socket family)、SOCK_STREAM (socket type)、protocoltype等參數。 sock = socket(AF_INET, SOCK_STREAM, 0);

(2/5) 2.Binding Socket地址:Socket 出入口需Binding到TCP address,網路上的電腦主 機才可以依據使用者所指定的TCP address,建立資料傳送的通道。TCP address 包含IP address (如140.115.17.111) 及TCP Port number。我們熟悉的網路應用: telnet 140.115.17.111 23與ftp 140.115.17.111 21,均需依據所指定的 host IP與 Port,建立連接、傳輸資料。 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) 3.Connection的建立:電腦主機可以使用Binding TCP address後的Sock et,建立資 料傳送通道。Server/Client 的傳輸模式,Server 端需呼叫accept() 功能,等待Client的連接建立要求。Client端則呼叫connect()功能,要求與Server主機建立連接通道。 msgsock = accept(sock,(struct sockaddr *)0, (int *)0); connect(sock, (struct sockaddr *)&server, sizeof server)

(4/5) 4.傳輸網路資料:Client與Server主機間成功地建立連接通道後。兩端均可藉由各自的Socket出入口,read 或write 資料到對方。 rval = read(msgsock,buf,sizeof(buf)) wrval=write(msgsock,buf,sizeof(buf))

(5/5) 5.關閉 Socket介面:當應用程式不再使用Socket 出入口做資料傳送時 ,需關閉Socket close(sock)

server Socket() Bind() client Listen() Socket() Accept() 連線建立 等待連線要求 Connect() Read() 要求資料 Write() Write() 連線結束恢復等待 回覆資料 Read() Read() 告知傳輸結束 Close() Close()

參考網址 http://content.edu.tw/primary/info_edu/cy_sa/report/more/8611a8.htm http://dslab.cis.thu.edu.tw/course/network/netprog/sockets/socket.htm