TCP与UDP的区别

本文介绍了计算机网络的基本概念,包括网络连接的发展、网络的功能如聊天软件,重点讲解了Java在支持网络通信中的作用,特别是TCP和UDP协议的应用,以及网络编程中的关键问题,如IP地址、端口和通信协议的使用。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

网络编程概述

        什么是计算机网络

                把不同区域的计算机(广义上的),通过通信设备和线路连接起来,可以实现数据的传输和共享的系统。

        实现不同计算机之间联系,必须有介质连接

        最开始在一间办公室

        后来一栋楼

        一个城市

        一个国家

        全球

网络是干什么

        聊天 --> 聊天软件 qq

        Java语言是支持网络间的数据传输,将底层的细节封装起来,给程序员提供了一套标准的类库,很方便使用Java语言开发出可以进行网络通信的软件。

        借助计算机网路,实现我们所写的程序,在不同的电脑上,可以进行数据传输。

        网络编程核心问题:

                如何找到网络世界中的目标主机,以及目标软件

                        win+r cmd ipconfig 查看自己电脑的ip

                如何安全可靠的进行数据传输        协议    规则

网络的一些基本知识

        网络模型

                OSI参考模型,是一个理想化的标准模型

                        分成7层

                实际上的使用Tcp/ip网络模型

                        分成4层

                                应用层(http)

                                运输层(协议)

                                网络层(IP)

                                物流链路层(硬件设备)

                网络传输数据为什么要分层

                        在不同的层中,对数据加入的不同的头(协议,ip)

                         逐层分工处理                

                通信要素:ip 端口 协议

                        目标主机,以及目标软件

                        IP:在网络世界中,是计算机的地址

                                局域网地址 192.168.1.20  链接到路由器,会自动分配ip

                                广域网地址:家里的宽带  与外界连接

                                本机地址:本地回环地址  127.0.0.1

                        端口:是计算机中运行中的程序的编号,对应的是程序

                        ip找主机

                        端口找程序

                        ip+端口        找到目标计算机  以及你想要的程序

                        端口号0-65535之间        由于0-1024被一些系统程序使用

                        所以我们开发的程序可以从1024-65535区间定义,

                        但是不能与已有的端口冲突

                如何安全传输--通信协议

                        为了安全可靠的进行数据传输,需要对传输的内容,速率,出错之后的处理办法等进行控制,而制定的一些规约,,称为协议。

                传输层有两个主要的协议:

                        TCP(Transmission Control Protocol 传输控制协议):

                                使用TCP协议进行数据传输前,必须先要去检测网络是否通常,客户端是否能连接到服务器端。如果能连接到,则进行数据传输,如果连接不到,会报错。采用的是3次握手的机制。

                                TCP是可靠的,相对udp效率低

                        UDP(User Datagram Protocol 用户数据报协议):

                                将数据封装数据报

                                数据报包含 数据 自己的ip 目标ip

                                发送前不需要建立连接,直接发送 例如发射导弹(目标坐标)

                                是否发送成功,不清楚,不知道

                                是不安全的,但是效率高

Java中的两种协议下的编程

        基于TCP协议的编程

                服务器端:

                        ServerSocket serverSocket  = new ServerSocket(9999);

                        Socket socket = serverSocket.accept();

                客户端:

                        Socket socket = new Socket("127.0.0.1",9999);

                        socket.getInputStream();

                        socket.getOutputStream();

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值