网站相关(协议,RESTful)

TCP/IP

在 TCP/IP 内部

在 TCP/IP 中包含一系列用于处理数据通信的协议:

1.TCP (传输控制协议) - 应用程序之间通信
2.UDP (用户数据包协议) - 应用程序之间的简单通信
3.IP (网际协议) - 计算机之间的通信
4.ICMP (因特网消息控制协议) - 针对错误和状态
5.DHCP (动态主机配置协议) - 针对动态寻址

TCP 使用固定的连接

TCP 用于应用程序之间的通信
当应用程序希望通过 TCP 与另一个应用程序通信时,它会发送一个通信请求。这个请求必须被送到一个确切的地址。在双方“握手”之后,TCP 将在两个应用程序之间建立一个全双工 (full-duplex) 的通信
这个全双工的通信将占用两个计算机之间的通信线路,直到它被一方或双方关闭为止。
UDP 和 TCP 很相似,但是更简单,同时可靠性低于 TCP。

IP 是无连接的

IP 用于计算机之间的通信
IP 是无连接的通信协议。它不会占用两个正在通信的计算机之间的通信线路。这样,IP 就降低了对网络线路的需求。每条线可以同时满足许多不同的计算机之间的通信需要。
通过 IP,消息(或者其他数据)被分割为小的独立的包,并通过因特网在计算机之间传送。
IP 负责将每个包路由至它的目的地。

TCP/IP

TCP/IP 意味着 TCP 和 IP 在一起协同工作

TCP 负责应用软件(比如您的浏览器)和网络软件之间的通信。

IP 负责计算机之间的通信。

TCP 负责将数据分割并装入 IP 包,然后在它们到达的时候重新组合它们。
IP 负责将包发送至接受者。

域名

当你键入一个像http://www.zengqi.top这样的域名,域名会被一种 DNS 程序翻译为数字。
在全世界,数量庞大的 DNS 服务器被连入因特网。DNS 服务器负责将域名翻译为 TCP/IP 地址,同时负责使用新的域名信息更新彼此的系统。

当一个新的域名连同其 TCP/IP 地址一起注册后,全世界的 DNS 服务器都会对此信息进行更新。

TCP/IP 协议族

TCP:
TCP 用于从应用程序到网络的数据传输控制。
TCP 负责在数据传送之前将它们分割为 IP 包,然后在它们到达的时候将它们重组。

IP:
IP 负责计算机之间的通信。
IP 负责在因特网上发送和接收数据包。

HTTP:
HTTP 负责 web 服务器与 web 浏览器之间的通信。
HTTP 用于从 web 客户端(浏览器)向 web 服务器发送请求,并从 web 服务器向 web 客户端返回内容(网页)。

HTTPS:
HTTPS 负责在 web 服务器和 web 浏览器之间的安全通信。
作为有代表性的应用,HTTPS 会用于处理信用卡交易和其他的敏感数据。

SSL:
SSL 协议用于为安全数据传输加密数据。

MIME:
MIME 协议使 SMTP 有能力通过 TCP/IP 网络传输多媒体文件,包括声音、视频和二进制数据。

FTP:
FTP 负责计算机之间的文件传输。

DHCP:
DHCP 用于向网络中的计算机分配动态 IP 地址。

ARP:
ARP用于通过 IP 来查找基于 IP 地址的计算机网卡的硬件地址

RARP:
RARP 用于通过 IP 查找基于硬件地址的计算机网卡的 IP 地址

关于TCP/IP,SOCKET,HTTP之间的关系等:

网络由下往上分为
  物理层、数据链路层、网络层、传输层、会话层、表示层和应用层。
  通过初步的了解,我知道IP协议对应于网络层TCP协议对应于传输层,而HTTP协议对应于应用层
  三者从本质上来说没有可比性,
  socket则是对TCP/IP协议的封装和应用(程序员层面上)
  也可以说,TPC/IP协议是传输层协议,主要解决数据如何在网络中传输
  而HTTP是应用层协议,主要解决如何包装数据
  关于TCP/IP和HTTP协议的关系,网络有一段比较容易理解的介绍:
  “我们在传输数据时,可以只使用(传输层)TCP/IP协议,但是那样的话,如果没有应用层,便无法识别数据内容。
  如果想要使传输的数据有意义,则必须使用到应用层协议。
  应用层协议有很多,比如HTTP、FTP、TELNET等,也可以自己定义应用层协议。
  WEB使用HTTP协议作应用层协议,以封装HTTP文本信息,然后使用TCP/IP做传输层协议将它发到网络上。”
  而我们平时说的最多的socket是什么呢,实际上socket是对TCP/IP协议的封装,Socket本身并不是协议,而是一个调用接口(API)
  通过Socket,我们才能使用TCP/IP协议。
  实际上,Socket跟TCP/IP协议没有必然的联系
  Socket编程接口在设计的时候,就希望也能适应其他的网络协议
  所以说,Socket的出现只是使得程序员更方便地使用TCP/IP协议栈而已,是对TCP/IP协议的抽象,
  从而形成了我们知道的一些最基本的函数接口,比如create、listen、connect、accept、send、read和write等等。
  网络有一段关于socket和TCP/IP协议关系的说法比较容易理解:
  “TCP/IP只是一个协议栈,就像操作系统的运行机制一样,必须要具体实现,同时还要提供对外的操作接口。
  这个就像操作系统会提供标准的编程接口,比如win32编程接口一样,
  TCP/IP也要提供可供程序员做网络开发所用的接口,这就是Socket编程接口。”

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值