5.3 简单的tcp通讯 信息工程系 向模军 Tel: QQ:

Slides:



Advertisements
Similar presentations
江右弘道书院 弘 毅弘 毅. “ 启蒙运动 ” 何以重要?  “ 启蒙运动 ” 与中国转型 “ 中西古今 ” 四维中的启蒙.
Advertisements

四川财经职业学院会计一系会计综合实训 目录 情境 1.1 企业认知 情境 1.3 日常经济业务核算 情境 1.4 产品成本核算 情境 1.5 编制报表前准备工作 情境 1.6 期末会计报表的编制 情境 1.2 建账.
主编:邓萌 【点按任意键进入】 【第六单元】 教育口语. 幼儿教师教育口 语概论 模块一 幼儿教师教育口语 分类训练 模块二 适应不同对象的教 育口语 模块三 《幼儿教师口语》编写组.
第一組 加減法 思澄、博軒、暐翔、寒菱. 大綱 1. 加減法本質 2. 迷思概念 3. 一 ~ 七冊分析 4. 教材特色.
高级服务器设计和实现 1 —— 基础与进阶 余锋
海南医学院附 院妇产科教室 华少平 妊娠合并心脏病  概述  妊娠、分娩对心脏病的影响  心脏病对妊娠、分娩的影响  妊娠合病心脏病的种类  妊娠合并心脏病对胎儿的影响  诊断  防治.
植树节的由来 植树节的意义 各国的植树节 纪念中山先生 植树节的由来 历史发展到今天, “ 植树造林,绿化祖国 ” 的热潮漫卷 了中华大地。从沿海到内地,从城市到乡村,涌现了多少 造林模范,留下了多少感人的故事。婴儿出世,父母栽一 棵小白怕,盼望孩子和小树一样浴光吮露,茁壮成长;男 女成婚,新人双双植一株嫩柳,象征家庭美满,幸福久长;
客户协议书 填写样本和说明 河南省郑州市金水路 299 号浦发国际金融中 心 13 层 吉林钰鸿国创贵金属经营有 限公司.
浙江省县级公立医院改革与剖析 马 进 上海交通大学公共卫生学院
第二章 环境.
教师招聘考试 政策解读 讲师:卢建鹏
第2期技職教育再造方案(草案) 教育部 101年12月12日 1 1.
企业员工心态管理培训 企业员工心态管理培训讲师:谭小琥.
软件学院11级实习前培训-论文和学位申请 任皖英 Tel: (办)
计算机网络课程总结 一、计算机网络基础 计算机网络定义和功能、基本组成 OSI/RM参考模型(各层的功能,相关概念, 模型中数据传输 等)
多媒体辅助教学及专业实训视频库介绍 (北京理工大学珠海学院专场)
“亲子教育”心理成长任务 主讲:刘晓红 广州中医药大学心理辅导中心 主任 国家心理咨询师职业资格 培训师 全国人才专业技术能力测评EAP 高级讲师.
审计案例研究 第一讲 辅导教师 周桂芝.
福建培训网( QQ: TEL: 合纵连横下午茶—— 人生启迪十个小故事
二十世纪外国文学专题 章丘电大 李颜.
1.3.1 细胞膜——系统的边界 ●高中生物课件(人教课标版) 万晓军生物工作室(安义中学)
体育教师提高科研能力的有效策略 ——从观察、分析、选题、构思谈起
第十讲 网络通信 1、网络基本概念 2、Java与Internet 3、使用InetAddress 4、使用URL 5、Socket通信
第十五章 网络编程.
网络程序设计 第二章 客户端Socket用法详解.
经济发展新环境下糖企如何运用金融工具服务生产经营
民事诉讼法学 杨嬿宁 TEL: QQ:
第9章 网络通信 1.
山东大学附属中学 甄广军 Tel: 初中体育 课堂教学设计要点 山东大学附属中学 甄广军 Tel:
好爸妈胜过好老师 激活兴趣、培养能力、以文育人 主讲:谢晓鸿 快乐作文杂志社 重庆小记者站.
项目四 组建跨地区网络 授课教师:肖颖.
国开学习网/形考模块
实验4 基于Socket的C/S程序开发 实验目的
Java语言程序设计 清华大学出版社 第9章 网络通信.
第14章 Java网络编程 Java语言提供了强大的网络编程功能,能够处理各种网络资源以及进行网络通信。java.net包定义了Java语言网络编程的主要工具类。其中,包括代表网络IP地址的InetAddress类;与URL有关的URL类和URLConnection类;与网络通信有关的Socket类和ServerSocket类。本章包括以下知识点。
1、了解TCP和UPD的特点和区别 2、了解TCP的连接传输数据过程 3、能够用TCP建立数据连接和传输数据
第二讲 搭建Java Web开发环境 主讲人:孙娜
TCP/IP Protocol Suite TCP/IP協定 第二組 投影片製作by簡嘉宏 綦凱宏 林睿敏 滕孟哲.
第11章 Java网络编程 本章要点 11.1 网络基础 11.2 InetAddress编程 11.3 URL编程
西南科技大学网络教育系列课程 高级语程序设计(Java) 第十一章 Java 中的网络编程.
2018/12/3 面向对象与多线程综合实验-网络编程 教师:段鹏飞.
2018/12/3 面向对象与多线程综合实验-网络编程 教师:段鹏飞.
网络常用常用命令 课件制作人:谢希仁.
第五讲 四则运算计算器(一) 精品教程《C#程序设计与应用(第2版)清华大学出版社 谭恒松 主编
1、能够使用java进行数据库连接和SQL查询操作
Chapter 11:Java网络编程 授课教师:赵小敏 浙江工业大学 软件学院
4、按钮事件.
第十一章 Java的网络功能.
4.2通讯服务模块线程之间传递信息 信息工程系 向模军 Tel: QQ:
第 8 章 网络程序设计.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
宁波市高校慕课联盟课程 与 进行交互 Linux 系统管理.
第7章 网络编程.
SOA – Experiment 2: Query Classification Web Service
C语言程序设计 主讲教师:陆幼利.
5.4 利用tcp实现文件传输 信息工程系 向模军 Tel: QQ:
第四章 团队音乐会序幕: 团队协作平台的快速创建
DQMClientDim.cxx及双光子练习
实验七 安全FTP服务器实验 2019/4/28.
计算机网络与网页制作 Chapter 07:Dreamweaver CS5入门
Select模型 本节内容 视频提供:昆山爱达人信息技术有限公司 视频录制:yang 官网地址:
2019/5/3 JAVA Socket(UDP).
工业机器人知识要点解析 (ABB机器人) 主讲人:王老师
_07多连接之select模型 本节课讲师——void* 视频提供:昆山爱达人信息技术有限公司 官网地址:
阻塞式模型 本节内容 视频提供:昆山爱达人信息技术有限公司 视频录制:yang 官网地址:
助教:廖啟盛 JAVA Socket(UDP) 助教:廖啟盛
第十二章 Java网络编程 1.URL编程 2.Socket网络编程 3.Datagram网络编程.
创建、启动和关闭Activity 本讲大纲: 1、创建Activity 2、配置Activity 3、启动和关闭Activity
本章提要 ◆ 客户/服务器模型 ◆ Java编写客户应用程序 ◆ Java编写服务器应用程序
國立臺灣師範大學附屬高級中學 102學年度第一學期 家長日 校務方針報告
Presentation transcript:

5.3 简单的tcp通讯 信息工程系 向模军 Tel: Email: QQ: 13684285460 xmj.cn@163.com 156638267

1 任务引入 在基于UDP的通讯模式中,通讯双方有时需要可靠的通讯(例如:文件传输)。由于UDP协议不保证通讯可靠性,因此在要求保障通讯可靠性的应用中,采用TCP协议。 TCP协议的通讯模式是客户/服务方式。服务端打开一个TCP端口监听连接,客户端与服务端建立TCP连接,并在连接期间双向传递信息。 2/12

2 任务讨论 客户端和服务端Socket多线程编程 3/12

3 套接字基本概念 在使用套接字通信过程中主动发起通信的一方被称为客户机,接受请求进行通信的一方被称为服务器。通过套接字建立连接的过程分为3个步骤: 服务器建立守护进程,负责监听每个端口(客户端)是否要求进行通信。 客户创建一个Socket对象,包括连接的主机号和端口号,指定使用的通信信息,通过发送通信请求,与服务器试图建立连接。 服务器监听到客户机的请求,创建一个Socket接受连接对象,与客户机进行通信在。 在Java网络编程中,通过创建套接字可以建立与其他机器的连接并创建套接字InuptStream和OutputStream流对象,套接字输入、输出流完全可以将连接作为一个I/O流来对待。 在使用套接字编写客户机/服务器应用程序时,建立客户机和服务器两端相互通信的过程是一样的。该过程的主要工作可归纳为以下4个方面: 打开套接字。 打开到套接字的输入、输出流。 根据服务器协议读写套接字。 通信结束前的清理。 4/12

3 Socket类 Socket类实现客户端的通信功能 。 构造方法: public Socket(String host, int port) //远程服务器IP及响应端口 public Socket(InetAddress address, int port) public Socket(String host, int port, InetAddress localAddr, int localPort) public Socket(InetAddress address, int port, InetAddress localAddr, int localPort) //在指定的机器上的指定端口上运行 Socket的输入/输出流管理 public InputStream getInputStream() public void shutdownInput() public OutputStream getOutputStream() public void shutdownOutput() 这些方法都将抛出例外IOException,程序中需要捕获处理。 关闭Socket public void close() throws IOException 5/12

3 ServerSocket类 构造方法: public ServerSocket(int port) public ServerSocket(int port, int backlog) //支持指定数目的连接 public ServerSocket(int port, int backlog, InetAddress bindAddr) //在指定的机器上运行 这些方法都将抛出例外IOException,程序中需要捕获处理。 主要方法 public Socket accept():等待客户端的连接 public void close():关闭Socket 设置/获取Socket数据 public InetAddress getInetAddress()、public int getLocalPort(),… public void setSoTimeout(int timeout),… 这些方法都将抛出例外SocketException,程序中需要捕获处理。 6/12

3 Socket通信编程模式 无论一个Socket通信程序的功能多么齐全、程序多么复杂,其基本结构都是一样的,都包括以下四个基本步骤: 1、在客户方和服务器方创建Socket/ServerSocket实例。 2、打开连接到Socket的输入/输出流。 3、利用输入/输出流,按照一定的协议对Socket进行读/写操作。 4、关闭输入/输出流和Socket。 通常,程序员的主要工作是针对所要完成的功能在第3步进行编程,第1、2、4步对所有的通信程序来说几乎都是一样的。 7/12

4 任务实施 在JBuilder中新建项目。在项目中建立以下2个包(服务器端,客户端)。 服务器端: “连接监听”tcpServer类(线程),在指定地址、端口监听客户端的连接请求,并创建Socket套接口,创建、启动tcpThread线程 。 “Socket服务”tcpThread类(线程),利用Socket套接口,负责管理与客户端的连接服务,完成客户、服务端之间的数据通信。 “服务端主程序”mainThread类,负责启动和停止tcpServer线程。 客户端: “客户端TCP管理程序” tcpclienttools类(线程),负责创建到指定地址、端口的Socket,并通过Socket发送和接受数据 。 “客户端主控程序” mainThread类,启动tcpclienttools线程 。 8/12

5 任务点评 Socket在调用close()方法前,应先关闭输入、输出流,即调用InputStream 和OutputStream的close()方法 。 9/12

6 试一试 练一练 修改tcpServer 线程,使其在关闭ServerSocket之前,强制关闭所有打开的Socket。 10/12

7 课外拓展 收集资料,了解TCP的工作机制及其应用环境。 11/12

Thank You !