WEB开发网
开发学院软件开发C语言 C#网络编程(基本概念和操作) - Part.1 阅读

C#网络编程(基本概念和操作) - Part.1

 2009-03-26 08:20:08 来源:WEB开发网   
核心提示: 引言C#网络编程系列文章计划简单地讲述网络编程方面的基础知识,由于本人在这方面功力有限,C#网络编程(基本概念和操作) - Part.1,所以只能提供一些初步的入门知识,希望能对刚开始学习的朋友提供一些帮助,如果进程B接收到了这个“hello”,就向进程A回复一个“hell

引言

C#网络编程系列文章计划简单地讲述网络编程方面的基础知识,由于本人在这方面功力有限,所以只能提供一些初步的入门知识,希望能对刚开始学习的朋友提供一些帮助。如果想要更加深入的内容,可以参考相关书籍。

本文是该系列第一篇,主要讲述了基于套接字(Socket)进行网络编程的基本概念,其中包括TCP协议、套接字、聊天程序的三种开发模式,以及两个基本操作:侦听端口、连接远程服务端;第二篇讲述了一个简单的范例:从客户端传输字符串到服务端,服务端接收并打印字符串,将字符串改为大写,然后再将字符串回发到客户端,客户端最后打印传回的字符串;第三篇是第二篇的一个强化,讲述了第二篇中没有解决的一个问题,并使用了异步传输的方式来完成和第二篇同样的功能;第四篇则演示了如何在客户端与服务端之间收发文件;第五篇实现了一个能够在线聊天并进行文件传输的聊天程序,实际上是对前面知识的一个综合应用。

与本文相关的还有一篇文章是:C#编写简单的聊天程序,但这个聊天程序不及本系列中的聊天程序功能强大,实现方式也不相同。

网络编程基本概念

1.面向连接的传输协议:TCP

对于TCP协议我不想说太多东西,这属于大学课程,又涉及计算机科学,而我不是“学院派”,对于这部分内容,我觉得作为开发人员,只需要掌握与程序相关的概念就可以了,不需要做太艰深的研究。

我们首先知道TCP是面向连接的,它的意思是说两个远程主机(或者叫进程,因为实际上远程通信是进程之间的通信,而进程则是运行中的程序),必须首先进行一个握手过程,确认连接成功,之后才能传输实际的数据。比如说进程A想将字符串“It's a fine day today”发给进程B,它首先要建立连接。在这一过程中,它首先需要知道进程B的位置(主机地址和端口号)。随后发送一个不包含实际数据的请求报文,我们可以将这个报文称之为“hello”。如果进程B接收到了这个“hello”,就向进程A回复一个“hello”,进程A随后才发送实际的数据“It's a fine day today”。

1 2 3 4 5 6  下一页

Tags:网络编程 基本 概念

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接