基于udp的协议netty课设题目_计算机网络课设之基于UDP协议的简易聊天机器人

本文介绍了基于UDP协议的简易聊天机器人实现,通过C语言完成。项目旨在将理论应用于实践,加深对计算机网络和UDP协议的理解。文章详细阐述了聊天机器人的工作原理,包括UDP的优势、客户服务器模式、数据报式套接字等知识点,并提供了客户端和服务器端的代码清单。读者可通过此项目入门网络编程,了解UDP协议与TCP的区别。
摘要由CSDN通过智能技术生成

前言:2017年6月份计算机网络的课设任务,在同学的帮助和自学下基本搞懂了,基于UDP协议的基本聊天的实现方法。实现起来很简单,原理也很简单,主要是由于老师必须要求使用C语言来写,所以特别麻烦,而且C语言的socket编程我基本没有接触过,顶多对java网络编程有一点涉猎。下面我将自己所学的知识做了一个总结,希望可以对想要去接触socket(网络)编程的同学有一个帮助,当然想要学好网络编程肯定是离不开几本书的支撑的,这篇文章主要通过一个机器人聊天的案例帮大家入下门。

注意:想要成功运行的前提条件是你别忘记,把我的代码的ip地址改一下(查看自己ip地址用ipconfig命令,详细查看《常见网络命令之traceroute命令一起其他常用命令 - 不忘初心 - 博客频道 - CSDN.NET 》http://blog.csdn.net/qq_34337272/article/details/72910417),以及问答文本文档创建一下,一定要按照我的格式。任何一个问题都会导致程序无法运行

项目地址:基于UDP协议的简易聊天机器人 - 下载频道 - CSDN.NET http://download.csdn.net/detail/qq_34337272/9879091

一,先上效果图

1,半智能聊天+服务器可自定义内容(输入匹配 的内容自动回复,输入不匹配的内容服务器可以自定义回复):

2,服务器自动回复没有自定义回复

附加(自动回复问题内容文档):

二,目的和意义

(1)意义:

将理论运用于实践,更深入地掌握计算机网络的核心内容。用具体的实践成果,体现对理论知识的掌握程度,提高计算机网络的实践能力,加深对计算机网络理论知识的理解,特别是网络通信这一块的理解。

(2)目的:

培养理论联系实际的设计思想,训练综合运用所学的基础理论知识,结合生产实际分析和解决网络应用中问题的能力,从而使基础理论知识得到巩固和加深。

学习掌握网络应用工程的一般设计过程和方法。

通过 基于udp协议的socket编程加深对与udp协议的理解以及与tcp协议的区分、

掌握c语言socket编程的基本方法,简单网络编程的编程思想。

二,要求和涉及的知识点

三,具体实现过程

(1)基本的知识点:

1,UDP基本介绍以及聊天程序选用UDP的好处

在我们学习UDP的时候就知道,UDP不需要建立连接,而且没有数据确认和数据重传的机制,所以实时性较高而且花费开销特别小。在聊天时即使丢失一些数据也不会影响信息的交流,我们可以通过上下文语义知道对方所要表达的意思,或者根据对方的信息重新发送我们要说的话;对于TCP来说,在通讯前要经过三次握手协议建立连接,而建立连接的过程往往是比较耗费时间的,连接建立之后,我们在聊天时候可能过很长时间才说一句话,那么连接是保持呢还是先断开,等对方说话时再建立连接呢?所以在聊天中TCP面向连接、数据确认与重传的机制将会影响聊天的效率。所以一般聊天类的程序一般都会选择UDP而不是TCP。

2,客户服务器模式

3,数据报式套接字(SOCK_DGRAM)

提供了一个无连接服务(UDP)。数据包以独立包形式被发送,不提供无错保证,数据可能丢失或重复,并且接收顺序混乱。网络文件系统(NFS)使用数据报式套接字。 下图为无连接协议(UDP)的套接字调用:

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值