网络编程概述

网络编程概述

1、基本的通信架构

基本的通信架构有两种形式:CS架构和BS架构

  • CS架构:分为客户端(Client)和服务端(Server),两者都需要程序员自行开发

  • BS架构:分为浏览器(Browser)和服务端(Server),只需要开发服务端(网站,在浏览器里开发)

2、网络通信三要素

  • IP地址:设备在网络中的地址,是唯一的标识,全称“互联网协议地址”

  • 端口:应用程序在设备中的唯一标识

  • 协议:连接和数据在网络中传输的规则

通信协议在具体实际中的应用

1、IP地址

IP地址有两种形式:IPv4,IPv6

IPv4

在这里插入图片描述
每8位换算为一个十进制字节

IPv6:共128位

在这里插入图片描述

IP域名

如:https://www.baidu.com/

公网ip,内网IP
  • 公网IP:是可以连接互联网的IP地址;内网IP:也叫局域网IP,只能组织机构内部使用。
  • 192.168.开头的就是常见的局域网地址,范围为192.168.0.0–192.168.255.255,专门位组织机构内部使用。(这次我们的项目主体为局域网IP)
特殊的IP地址

127.0.0.1、localhost:代表本机IP,只会寻找当前所在的主机。

IP常用命令
  • ipconfig:查看本机IP地址
  • ping IP地址:检查网络是否联通

2、端口号

端口:是一个整型数,unsigned short,标记正在计算机设备上运行的应用程序,被规定为一个16位的二进制,范围是0~ 65535(0~ 2 16 2^{16} 216-1)
每个IP可以找到一个主机,而每个进程对应不同的端口号。
分类

  • 周知端口:0~1023,被预先定义的知名应用占用(如:HTTP占用80,FTP占用21)
  • 注册端口:1024~49151,分配给用户进程或者某些应用程序。
  • 动态端口:49151~65535,不固定分配某种进程,而是动态分配。

注意:我们自己开发的程序一般选择注册端口,且不可以出现重名现象。
在这里插入图片描述

3、协议

定义:网络上通信的设备,事先规定的连接规则,以及传输数据的规则被称为网络通信协议。
开放式网络互连标准:OSI网络参考模型
TCP/IP网络模型:事实上的国际标准

UDP:用户数据报协议
  • 特点:无连接、不可靠通信,但是通信效率高,应用于语音通话、视频直播
  • 不事先建立连接,数据按照包发,一包数据包含:自己的IP、程序端口,目的地IP,程序端口和数据(限制在64KB内)
  • 发送方不管对方是否在线,数据在中间丢失也不管,如果接受方收到数据也不返回,故是不可靠的
    在这里插入图片描述
TCP:传输控制协议
  1. 特点:面向连接,可靠通信。
  2. TCP的最终目的:要保证在不可靠的信道上实现可靠传输
  3. TCP的三个主要步骤:三次握手建立连接、传输数据进行确认、四次挥手断开连接。
1、三次握手建立可靠连接

可靠连接:确定通信双方,收发消息都是正常无问题的。
三次握手:在这里插入图片描述
为什么是三次握手建立连接?
分别确认客户端和服务端是否可以正常的发送消息和接收消息
第一次客户端向服务器发出连接请求,如果服务端收到了消息----证明客户端发送消息正常
第二次如果服务器返回了一个响应给客户端----证明了服务端发送消息和接收消息正常
第三次客户端再次发出确认信息----证明了客户端接收消息正常

传输数据会进行确认,以保证数据传输的可靠性。

2、四次握手断开连接

目的:确保双方数据的收发都已经完成。
具体断开连接的过程

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值