10 giugno
PROLEGOMENON
.NET NETWORKING
The .NET Framework is invading the world of software development and it's coming
and spreading very fast, Waging it's high performance development tools and armed
with loads of support and goodies and it's now reaching most of developers today,
and for those who is not seeing it coming, well, the decision is yours.
What's really my area of interest from the .NET frameworks are it's network
programming features (aside from XNA), it has helped me a lot to solved many of
my networking problems (socket) by using C# and it's socket functionality
particularly the Berkely raw Socket, UdpClient, TcpClient and TcpListener.
Since the .NET Framework Socket classes are built on top of Winsock 2.0, there's
no need or reason for me to find a non managed or a third party native network
library and try to work on it. The high performance socket API of the .NET Framework
can handle most of sending and receiving task for handling data accross the wire
whether it's a LAN base or over the internet, and theres a new added features to the
Socket class in the .NET Framework (.Net 3.5/Orcas ) which enables much greater
throuhput than previous versions with it's new programming API.
PROJECT OBJECTIVES
The aim of this project is to create a socket peers communication network library
that can be applicable both for transaction application and at the same time served
as a network engine for games, handling data messages through socket peers only
without using ODBC/OLEDB/ADO/ADO.NET and not directly connected to any heavy
weight databases.
Once the data is fetch and arrives to host or at the endpoint thats the time I will save
the data locally to any type of storage I wanted to use, whether save it to a
databases such as mySQL, MS SQL Server or just save it to a flat file such
XML, ACCESS and of course to my favorite DBF/MDX file, which I think is much
more secure and fast than let the user directly connect to the database itself remotely.
Although, I know this approach is not suited for other kinds of transaction base
application, but for anything lite and where performance is needed like games for
instance, I believe working directly with sockets will do the job right.
"Since I'm still heavily working and researching for this project, I don't guarantee that
everything I will mentioned and jotted down to this blog is technically accurate and
correct, what I have here is based on my research, interpreteration and understanding
to the socket networking subject and should not be consider as facts or best approach."
NOTE: Blog contents may be modified from time to time to comply with library's latest revision and for future referencing.