当前位置: 首页 > news >正文

C#网络编程系列文章索引

C#网络编程系列文章索引

1.  网络协议简介

 介绍了网络分层:   

  •  网络层
  •  数据链路层
  •  网络层
  •  传输层
  •  应用层

2.  HTTP协议详解

  介绍应用层的HTTP协议,是Asp.net开发人员必须掌握的协议

  •  HTTP请求
  •    HTTP响应

3.  自定义Web服务器

  介绍利用Socket自制一个Web服务器来响应浏览器发出的请求

  •  实现一个简单的Web服务器

4.  自定义Web浏览器

 介绍利用WebBrowser控件实现自定义的Web浏览器

  •  浏览器的组成
  •  WebBrowser控件的介绍
  •  制作一个Web浏览器

5.  TCP编程

  介绍TCP的工作原理

  •  TCP协议的工作过程
  •  制作一个简单的通信程序

6.  UDP编程

  介绍UDP协议的工作原理

  •  UDP协议工作原理和优势介绍
  •  UDP广播和组播的介绍
  •  制作一个UDP程序

7.  UDP编程补充——UDP广播程序的实现

   主要是补充UDP广播和组播内容

  •  实现一个UDP广播和组播程序

 

8.  P2P编程

   介绍P2P(点对点)协议的工作原理

  •  P2P系统的分类
  •  P2P程序的工作原理
  •  实现一个资源发现程序

9.  实现类似QQ的即时通信程序

   主要是对UDP、TCP和P2P协议的一个总结

  •  即时通信程序的业务流程
  •  制作一个聊天程序

10. 实现简单的邮件收发器

   介绍电子邮件相关协议(POP3,SMTP协议等)

  •  电子邮件协议的基本工作原理
  •  邮件系统分类
  •  制作一个邮件发送和接收程序

11. 实现一个基于FTP协议的程序——文件上传下载器

   介绍FTP协议和工作过程

  •  FTP协议的自我介绍
  •  制作一个FTP的客户端——文件上传下载器

12. 实现一个简单的FTP服务器

   介绍FTP服务器的工作原理

  •  FTP服务器与FTP客户端的对话过程
  •  FTP协议中常用命令
  •  制作一个FTP服务器来——对客户端的请求作出回答

 

总结:

  在学习网络编程时,大家可以理解为如何去实现两个人的流畅的对话,因为网络编程就是实现客户端与服务器端之间之间的对话,然后它们之间对话要能互相明白话,也就有了协议的概念,协议就好比现实生活中人与人对话中的语言,大家都知道人与人要流畅的对话,必须互相都要能明白对方说的话,如果一个不懂英语的人人与一个美国人对话,这样的对话肯定是进行不下去的,客户端与服务器的对话也是一样的,如果客户端发出的请求命令,服务器肯定不明白这样客户端发出的请求将无法得到回应或者得到一个服务器不能响应的一个信息,为了大家规范客户端与服务器之间的对话,所以一个组织对每个网络层中的对话过程都定义了一个“规则”,这个规则就是我们在网络编程中使用的协议。可想而知,协议在网络编程中是多么的重要,在本系列文章中都是下介绍网络层的协议,然后用一个小的示例来让大家巩固对协议的理解。

  写这篇文章主要是帮大家把本系列的文章罗列到一起,这样可以方便大家学习和查找,也有方便大家收藏,以便大家之后学习——这样大家只需要收藏这个一个网页就可以定位本系列中的所有文章了,最后希望本系列的文章可以帮助到大家

 

 

 

  

 

 

相关文章:

  • iOS Web应用开发:运用HTML5、CSS3与JavaScript
  • Makefile 中:= ?= += =的区别
  • centos7zabbix-agen安装
  • vue-i18n beforeDestroy不能调用this.$t
  • 验证码识别并复制到剪切板
  • cheerp 简介
  • CSS 三角实现
  • 第十二章 Java内存模型与线程
  • 从源码分析如何优雅的使用 Kafka 生产者
  • iOS筛选菜单、分段选择器、导航栏、悬浮窗、转场动画、启动视频等源码
  • 阿里云重庆大学大数据训练营落地分享
  • Android Studio多渠道打包实战
  • 传统企业触网的战略--借助电商外包
  • 本周ASP.NET英文技术文章推荐[06/10 - 06/16]
  • 匈奴的历史简述
  • dva中组件的懒加载
  • HomeBrew常规使用教程
  • IP路由与转发
  • js作用域和this的理解
  • Making An Indicator With Pure CSS
  • Phpstorm怎样批量删除空行?
  • Rancher-k8s加速安装文档
  • Redis在Web项目中的应用与实践
  • Unix命令
  • 包装类对象
  • 从零搭建Koa2 Server
  • 多线程事务回滚
  • 官方新出的 Kotlin 扩展库 KTX,到底帮你干了什么?
  • 前端之React实战:创建跨平台的项目架构
  • 深入浅出webpack学习(1)--核心概念
  • 网页视频流m3u8/ts视频下载
  • ​Spring Boot 分片上传文件
  • (C++17) optional的使用
  • (第9篇)大数据的的超级应用——数据挖掘-推荐系统
  • (第一天)包装对象、作用域、创建对象
  • (附源码)spring boot智能服药提醒app 毕业设计 102151
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (每日持续更新)jdk api之FileFilter基础、应用、实战
  • (牛客腾讯思维编程题)编码编码分组打印下标(java 版本+ C版本)
  • (三)模仿学习-Action数据的模仿
  • (数位dp) 算法竞赛入门到进阶 书本题集
  • (转)linux自定义开机启动服务和chkconfig使用方法
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)从零实现3D图像引擎:(8)参数化直线与3D平面函数库
  • (转)大型网站架构演变和知识体系
  • .gitattributes 文件
  • .jks文件(JAVA KeyStore)
  • .NET C#版本和.NET版本以及VS版本的对应关系
  • .NET Core实战项目之CMS 第十二章 开发篇-Dapper封装CURD及仓储代码生成器实现
  • .net 简单实现MD5
  • .NET/C# 异常处理:写一个空的 try 块代码,而把重要代码写到 finally 中(Constrained Execution Regions)
  • .NET8.0 AOT 经验分享 FreeSql/FreeRedis/FreeScheduler 均已通过测试
  • .NET处理HTTP请求
  • .py文件应该怎样打开?
  • /etc/skel 目录作用