本文已参与「新人创作礼」活动,一起开启掘金创作之路。
声明:本教程不收取任何费用,欢迎转载,尊重作者劳动成果,不得用于商业用途,侵权必究!!!
目录【6】
一、TCP/IP模型
1、TCP/IP起源于美国国防部高级研究规划署(DARPA)的一项研究计划——实现若干台主机的相互通信。
2、现在TCP/IP已成为Internet上通信的工业标准。
3、TCP/IP模型包括4个层次:
应用层、传输层、网络层、网络接口层
**因为我们这个ISO/OSI七层参考模型,它比较复杂,**所以我们目前用的比较多的,是TCP/IP模型。
二、TCP/IP与OSI参考模型的对应关系
1、TCP/IP模型的网络接口层 对应了 OSI参考模型的数据链路层和物理层,
2、网络层对应了网络层,传输层对应了传输层,
3、TCP/IP模型的应用层层 对应了 OSI参考模型的应用层、表示层和会话层。
4、OSI参考模型有时候我们在面试的时候,面试单位可能会出一些面试题,OSI参考模型是哪七层?
那么我们可以把这七层给记下来。
——————————————————————————————————————
目录【7】
一、端口
1、端口是一种抽象的软件结构(包括一些数据结构和I/O缓冲区)。应用程序通过系统调用与某端口建立连接(binding)后(也就是我们通常所说的,应用程序绑定到某个端口),传输层传给该端口的数据都被相应的进程所接收,相应进程发给传输层的数据都通过该端口输出。
2、端口用一个整数型标识符来表示,即端口号。端口号跟协议相关,TCP/IP传输层的两个协议TCP和UDP是完全独立的两个软件模块,因此各自的端口号也相互独立,端口通常称为协议端口(protocol port),简称端口。
3、端口使用一个16位的数字来表示(也就是2个字节),它的范围是0~65535,1024以下的端口号保留给预定义的服务。例如:http使用80端口。
我们在编写网络应用程序的时候,那么我们去使用1024以上的端口号。
二、套接字(socket)的引入
1、为了能够方便的开发网络应用软件,由美国伯克利大学在Unix上推出了一种应用程序访问通信协议的操作系统调用socket(套接字)。socket的出现,使程序员可以很方便地访问TCP/IP,从而开发各种网络应用的程序。
2、随着Unix的应用推广,套接字在编写网络软件中得到了极大的普及。后来,套接字又被引进了Windows等操作系统中。Java语言也引入了套接字编程模型。