I want to compress packet go out from my machine

  • Thread starter Champika Nirosh
  • Start date
C

Champika Nirosh

Hi,

I have two machine where I needed to have a extended TCP/IP protocol to make
the link between the two machines

Mean,I need to write a application that compress every data the machine send
out.. and also need to un compress at the receiving end..

futher explaing...

If I copy a file from machine 1 to machine 2.. I want my application to
compress that file just before it break into the packet list and at the
receiving end I want my application to uncompress it just after the file is
created out of the packet list..

Any tech help or link to do this is greately appreciated..

Nirosh.
 
C

Champika Nirosh

Thanks, any idea how to run the process at the correct place..??

i.e. when to run the tool that compress the files just before machine break
data in to packet list..

Nirosh.
 
C

Carl Daniel [VC++ MVP]

Champika said:
Thanks, any idea how to run the process at the correct place..??

i.e. when to run the tool that compress the files just before machine
break data in to packet list..

If I take your meaning correctly, you're talking about something low level -
something that simply cannot be done from .NET.

So, are you looking for a way to compress ALL communication across a network
link (between two machines) regardless of the sender and receiver of the
implementation (for example, copying a file using windows explorer between
two machines)? Or are you only looking to transfer compressed data between
programs that you write that are running on two machines?

If the former, then you're in the domain of writing a kernel-level network
transport driver and distinctly out of the realm of .NET. Ask in
microsoft.public.win32.programmer.kernel or one of the other low-level
driver newsgroups for help in building this kind of driver. Expect to spend
a year or two getting this driver to work correctly. And no, I'm not
exagerating when I say a year or two..

If you're just looking for the second type of system (you send compressed
data between programs that you control), then you can, as another respondent
suggested, use GZipStream to compress whatever you're needing to send across
the link. Since in this case you control both ends of the link, you simply
have to code your application to compress the data before you send it.
There's no magic place that you can insert some compression code to make
this happen automatically for all traffic.

HTH

-cd
 
C

Champika Nirosh

You got me ... I am trying to find a way to compress *ALL* communication
across network links, initially with windows only. rather if I make it
little simplar .. not command but data.. probably heavy data let say data
that exceed 100 KB of size..

I will post this query in the correct news group too.. but since you
understood it accurately this is what my aim..
The net work trafic is increasing data by day and just like people make
buses/ train to replace small vehicle to reduce the road traffic I want
compress file to replace regular file when they send over network...

This module which does this operation will installed on every server which
look out side of ones networks (probably in network servers, proxy servers,
web servers etc).

One part of the system will compress data just before they break into packet
list and other part of the program will uncompress it just after the packet
list get merged..

Nirosh.

Original Post is bellow

___________________________
Hi,

I have two machine where I needed to have a extended TCP/IP protocol to make
the link between the two machines

Mean,I need to write a application that compress every data the machine send
out.. and also need to un compress at the receiving end..

futher explaing...

If I copy a file from machine 1 to machine 2.. I want my application to
compress that file just before it break into the packet list and at the
receiving end I want my application to uncompress it just after the file is
created out of the packet list..

Any tech help or link to do this is greately appreciated..

Nirosh.
_______________________________
 
G

Guest

Champika Nirosh said:
You got me ...

Not really... are you trying to reinvent the compressed http?
For slow physical links, let the network hardware do the compression
and other optimizations on the physical layer, like modems do.

--PA
 
C

Champika Nirosh

Thanks for the answer..

Am I trying to reinvent the wheel here?

mmm... I know IIS 6.0 compress data, but never heard of a tcp/ip protocol
does it, even I didn't know that IIS 6.0 compress data by the time I think
this initially :-(. Does the modem compress data right now??? and net work
card too...

Nirosh.

Pavel A. said:
Champika Nirosh said:
You got me ...

Not really... are you trying to reinvent the compressed http?
For slow physical links, let the network hardware do the compression
and other optimizations on the physical layer, like modems do.

--PA
I am trying to find a way to compress *ALL* communication
across network links, initially with windows only. rather if I make it
little simplar .. not command but data.. probably heavy data let say data
that exceed 100 KB of size..

I will post this query in the correct news group too.. but since you
understood it accurately this is what my aim..
The net work trafic is increasing data by day and just like people make
buses/ train to replace small vehicle to reduce the road traffic I want
compress file to replace regular file when they send over network...

This module which does this operation will installed on every server
which
look out side of ones networks (probably in network servers, proxy
servers,
web servers etc).

One part of the system will compress data just before they break into
packet
list and other part of the program will uncompress it just after the
packet
list get merged..

Nirosh.

Original Post is bellow

___________________________
Hi,

I have two machine where I needed to have a extended TCP/IP protocol to
make
the link between the two machines

Mean,I need to write a application that compress every data the machine
send
out.. and also need to un compress at the receiving end..

futher explaing...

If I copy a file from machine 1 to machine 2.. I want my application to
compress that file just before it break into the packet list and at the
receiving end I want my application to uncompress it just after the file
is
created out of the packet list..

Any tech help or link to do this is greately appreciated..

Nirosh.
_______________________________
"Carl Daniel [VC++ MVP]"
Champika Nirosh wrote:
Thanks, any idea how to run the process at the correct place..??

i.e. when to run the tool that compress the files just before machine
break data in to packet list..

If I take your meaning correctly, you're talking about something low
level - something that simply cannot be done from .NET.

So, are you looking for a way to compress ALL communication across a
network link (between two machines) regardless of the sender and
receiver
of the implementation (for example, copying a file using windows
explorer
between two machines)? Or are you only looking to transfer compressed
data between programs that you write that are running on two machines?

If the former, then you're in the domain of writing a kernel-level
network
transport driver and distinctly out of the realm of .NET. Ask in
microsoft.public.win32.programmer.kernel or one of the other low-level
driver newsgroups for help in building this kind of driver. Expect to
spend a year or two getting this driver to work correctly. And no, I'm
not exagerating when I say a year or two..

If you're just looking for the second type of system (you send
compressed
data between programs that you control), then you can, as another
respondent suggested, use GZipStream to compress whatever you're
needing
to send across the link. Since in this case you control both ends of
the
link, you simply have to code your application to compress the data
before
you send it. There's no magic place that you can insert some
compression
code to make this happen automatically for all traffic.

HTH

-cd
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top