文档章节

TCP服务通讯

凯哥学堂
 凯哥学堂
发布于 2017/07/18 17:41
字数 977
阅读 6
收藏 0

image

一、TCP

image1.TCP又叫做套接字,传输安全,速度慢。

TCP和UTP是网络的传输协议,跟java没什么关系,没有说用java做的客户端必须连接java做的服务器,我们可以用c和c++做客户端,直接连接到java做的服务器都可以,只要都遵守TCP的协议规则就行。

2.TCP的连接

TCP有三次握手的规则,三次握手是?

TCP连接服务器的时候要来来回回三次询问,第一次问服务器是否存在网络是否通畅,服务器回答我存在,第二次询问服务器是否能进行连接啊,服务器说可以连接。第三次就是完成连接。TCP连接模式就是,客户端传输一个数据到服务器,服务器就会回客户端收到数据了,这样客户端才会进行下一个文件的传输,这样来来回回的确认才能确保文件安全无误的传输到对方的电脑上。

  1. ServerSocket是服务端,SocKet是通讯员,服务器就相当于一个很大的插板,插板上有很多个插口,而ServerSocket就相当于是一个很大的插板,插板上有很多个插口,你们都可以从这个插口上取得联系,一些电气设备需要来连接这个插板,这时电气设备就的插口就需要跟插板的插口进行连接。这样就相当于电气设备的插口是Socket(通讯员),插板上的插口也相当于是Socket(通讯员),而这个可以容纳许多Socket的插板就相当于是SeverSocket(服务端)。最后连接在一起就是Socket(通讯员)对Socket(通讯员),如果还有一个电器设备要连接在插板上就相当于连接到第二个插口上。

image

4.ServerSocket建立一个服务器IP是22.5.6.7端口为8989,建立一个客户端连接IP为22.5.6.7:8989的计算机这个客户端的Socket发出请求要连接SeverScoket服务器,ServerSocket就会马上产生一个对象Socket,这个产生的对象Scoket就会与客户端的Scoket建立通讯连接。一旦客户端与服务端建立好了连接,就会产生一个InputStream和OutputStream的通道。

image

5.当客户端通过电脑固定的IP127.0.0.1端口8080对网络请求访问服务器,通过accept()方法来监听有没有客户端来连接,如果有客户来连接就马上产生Socket对象,Socket对象就会产生两个流一个是InputStream和OutputStream流,相应的客户端也会产生InputStream和OutputStream流来进行连接,服务器ServerSocket要跟客户端说话就通过OutputStream来传输,相应的客户端Socket要跟服务器说也是通过OutputStream来传输。

image

6.代码

(1)创建一个服务器,用浏览器客户端来进行连接。

image

创建一个服务器端口号为8080,等待客户端来连接,连接时就会产生Socket对象,这个时候就通过InputStream和OutputStream拿出来,准备好一个字节数组,准备好读取客户端传过来的数据,客户端传过来信息通过String转换成字符,然后打印出去。浏览器就是用TCP协议,浏览器也是一个客户端。用浏览器这个客户端访问服务器时会告诉服务器你电脑的一些信息。

(2)

image

image

这就是来回询问。

image

image

(3)多网卡服务器的目的是:假设一个服务有两个网卡,一个连接内网连接内网服务器,进行内网服务,一个连接外网连接着国家骨干网。这样国家骨干网可以连接过来,城域网也可以连接过来。

image

© 著作权归作者所有

共有 人打赏支持
凯哥学堂
粉丝 15
博文 309
码字总数 275987
作品 0
东城
程序员
通讯转发、(负载均衡)通讯分发器(G5) - 更新日志v1.2.1

通讯转发、(负载均衡)通讯分发器(G5) - 更新日志v1.2.1 G5是一款高性能高并发负载、易配置使用、支持远程管理的轻量级TCP/IP的通讯转发、(负载均衡)通讯分发器软件。基于epoll(ET)事件驱动非...

calvinwilliams
2014/05/11
0
0
用单片机实现TCP链接的快捷车道-CH9121芯片,解决MQTT的联网问题。

物联网全栈教程-从云端到设备(三) 一 关注零妖的微信公众号,获取第一手物联网的技术干货: LINGYAOIOT 没有规矩不成方圆。从目前的市场环境来看,MQTT通讯协议已经成为了物联网行业的标配...

零妖
06/05
0
0
许雪里/xxl-rpc

《分布式服务通讯框架XXL-RPC》 一、简介 1.1 概述 XXL-RPC是一个分布式服务通讯框架,提供稳定高性能的RPC远程服务调用功能。现已开放源代码,开箱即用。 1.2 特性 1、快速接入:接入步骤非...

许雪里
2015/11/13
0
0
archimate系列之六通讯架构

通讯架构主要是阐述系统各组件之间如何通讯,使得开发人员能够能够理解各组件之间的相互关系,这对于微服务架构尤其重要。 以下就是一个典型的通讯架构图: 通讯方案通常有如下一些: 普通T...

小七赛文
04/19
0
0
后台与机器端关于DTU的相关通讯流程

由于公司是做自动售卖机系统的,所以最近在做Java的过程中接触到了后台与机台端的一系列的通讯,想记录下自己的一点心得和想法,抛砖引玉,有相关技术的牛人还请多多指教。 首先我先介绍一下...

Tank丶Farmer
2017/12/28
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

docker中安装了RabbitMQ后无法访问其Web管理页面

在官网找了"$ docker run -d --hostname my-rabbit --name some-rabbit -p 8080:15672 rabbitmq:3-management"这条安装命令,在docker上安装了RabbitMQ,,结果输入http://localhost:8080并不......

钟然千落
39分钟前
0
0
spring-cloud | 分布式session共享

写在前面的话 各位小伙伴,你们有福了,这一节不仅教大家怎么实现分布式session的问题,还用kotlin开发,喜欢kotlin的小伙伴是不是很开心! 以前在写Android的时候,就对客户端请求有一定的认...

冯文议
58分钟前
0
0
c语言之内存分配笔记

先看一个数组: short array[5] = {1,2} // 这儿定义的一个int类型的数组,数组第1和第2个元素值是1和2.其余后面默认会给值为0; 或者 short array[] = {1,2};//这儿数组第1和第2个元素,数组...

DannyCoder
今天
4
0
Shell | linux安装包不用选择Y/N的方法

apt-get install -y packageOR echo "y" | sudo apt-get install package

云迹
今天
2
0
Hadoop的大数据生态圈

基于Hadoop的大数据的产品圈 大数据产品的一句话概括 Apache Hadoop: 是Apache开源组织的一个分布式计算开源框架,提供了一个分布式文件系统子项目(HDFS)和支持MapReduce分布式计算的软件架...

zimingforever
今天
7
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部