Socket,TCP/IP,UDP,HTTP,FTP
1.Socket:套接字,是传输层协议的一种编程API
作用:用于描述IP地址和端口,区分来自不同应用程序的通信,实现数据传输的并发服务
JDK Socket:在java.net包下有两个类Socket和ServerSocket
2.TCP:面向连接的保证可靠传输层协议
特点:超时重发,丢弃重复数据,检验数据等
三次握手:在发送数据之前完成
1.client向服务器发送SYN包,等待服务器确认
2.服务器收到,并向client发送SYN+ACK包
3.client收到,向服务器发送ACK包确认收到
适用场景:点对点的通信
比如:网页,邮件(SMTP),远程链接(Telnet),文件传送(FTP)
3.UDP:面向数据报的无连接的传输层协议
特点:不需要在client和service端建立连接
适用场景:广播发送,用于多点通信和实时数据业务,注重速度流畅
比如,视频会议系统;QQ
4.HTTP:建立在TCP协议之上的应用层协议
特点:短连接,无状态
5.FTP:文件传输协议,应用程协议
特点:长传,下载和改变服务器上的目录
6.TCP/IP:是一个协议组,包括网络层,传输层,应用层
Socket充当的作用:是一组接口,把复杂的TCP/IP协议组隐藏咋在接口后面,通常情况下,Socket连接就是TCP连接

7.总结
1.HTTP是应用层协议,其传输都是被包装成TCP协议传输, 一个页面将需要建立多次的短期的TCP连接,每个TCP连接的建立将需要3次握手
2.Socket是实现传输层协议的一种编程API,可以是TCP,也可以是UDP
3.在创建Socket连接时,可以指定传输层协议,若指定TCP协议,该Socket连接就是一个TCP连接
4.在数据层层向下的过程中,每一层都会对数据进行一些封装处理(如打包或者编码);而在数据层层向上的过程中,每一层都会对数据进行一些逆处理(如解包或者解码)
Socket,TCP/IP,UDP,HTTP,FTP的更多相关文章
- SOCKET,TCP/IP,UDP,HTTP,FTP总结
一.TCP/UDP,SOCKET,HTTP,FTP简析 TCP/IP是个协议组(主要解决数据如何在网络中传输),可分为三个层次:网络层.传输层和应用层: 网络层:IP协议.ICMP协议.ARP协议 ...
- android 网络编程--socket tcp/ip udp http之间的关系
网络七层由下往上分别为物理层.数据链路层.网络层.传输层.会话层.表示层和应用层,一般编程人员接触最多的就是应用层和运输层,再往下的就是所谓的媒体层了,不是我们研究的对象. 下面是应用层.运输层,网络 ...
- Http,Socket,TCP/IP 协议简述
Http,Socket,TCP/IP 协议简述:https://blog.csdn.net/gordohu/article/details/54097841 TCP/IP协议,HTTP协议与webSo ...
- http与https与socket tcp/IP与UDP 协议等
网络由下往上分为: 物理层-- 数据链路层-- 网络层-- IP协议 传输层-- ...
- HTTP/TCP/IP UDP Socket等区别联系
1.TCP连接 手机能够使用联网功能是因为手机底层实现了TCP/IP协议,可以使手机终端通过无线网络建立TCP连接.TCP协议可以对上层网络提供接口,使上层网络数据的传输建立在“无差别”的网络之上. ...
- iOS中 HTTP/Socket/TCP/IP通信协议详解
// OSI(开放式系统互联), 由ISO(国际化标准组织)制定 // 1. 应用层 // 2. 表示层 // 3. 会话层 // 4. 传输层 // 5. 网络层 // 6. 数据链接层 // 7. ...
- socket,TCP/IP的理解
TCP/IP 要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间 ...
- iOS中 HTTP/Socket/TCP/IP通信协议详解 韩俊强的博客
每日更新关注:http://weibo.com/hanjunqiang 新浪微博 简单介绍: // OSI(开放式系统互联), 由ISO(国际化标准组织)制定 // 1. 应用层 // 2. 表示层 ...
- socket,TCP/IP的理解(转)
TCP/IP 要想理解socket首先得熟悉一下TCP/IP协议族, TCP/IP(Transmission Control Protocol/Internet Protocol)即传输控制协议/网间 ...
随机推荐
- hdu 5057 Argestes and Sequence(分块算法)
Argestes and Sequence Time Limit: 5000/2500 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Ot ...
- PHP&MySQL(二)——困也得啃书
madan,所有事情都敢赶在一起...以后每天中午去学车啊,好开心..晚上好困,但是困也得啃书........ 二.PHP脚本编程语言 什么变量啊,数据类型啊,特别特别基本的不记录了,说点容易忽略的. ...
- Wish You to Remember
Just to myself: it is not complicate. And I don't know its internal principle now. (ms08-067) But I ...
- cuda fft 计算
#include <assert.h> #include <stdio.h> #include <stdlib.h> #include <string.h&g ...
- [PHP]Yii2框架的坑
[PHP]Yii2框架的坑.md-/Users/zjh/Documents/我的文章/[PHP]Yii2框架的坑 html{font-family: sans-serif;-ms-text-size- ...
- 关于using关键字
使用C#访问数据库资源需要如下几步: SqlConnection con=new SqlConnection(str); try { con.Open(); //略 } catch(Exception ...
- windows下 git配置ssh
1. 打开 git bash 2. cd ~/.ssh 3. ssh-genkey (一致next), 会生成 id_rsa (密钥); id_rsa.pub(公钥) 4. 用记事本打开 id_rs ...
- View.inflate和LayoutInflater的inflate方法区别
平时ListView加载item中,adapter的getView方法中,我们经常用到: LayoutInflater.from(mContext).inflate(R.layout.it ,pare ...
- Java—Servlet开发
Servlet API中有4个java包: javax.servlet:包含定义Servlet与Servlet容器之间契约的类与接口. javax.servlet.http:包含定义HTTPServl ...
- 今天看了shell大神的写的一个统计脚本
通过nginx日志统计接口耗时排行 grep '/bigbox?' access_log | awk '{print $7"&process="$NF}'| sed -r ...