By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
435,054 Members | 1,304 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 435,054 IT Pros & Developers. It's quick & easy.

I want to compress packet go out from my machine

P: n/a
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.
Oct 3 '06 #1
Share this Question
Share on Google+
6 Replies


P: n/a
You can use the GZipStream or DeflateStream class to handle the
compression:
http://msdn2.microsoft.com/en-us/lib...zipstream.aspx

Champika Nirosh wrote:
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.
Oct 3 '06 #2

P: n/a
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.

"Chris Fulstow" <ch**********@hotmail.comwrote in message
news:11*********************@i3g2000cwc.googlegrou ps.com...
You can use the GZipStream or DeflateStream class to handle the
compression:
http://msdn2.microsoft.com/en-us/lib...zipstream.aspx

Champika Nirosh wrote:
>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.

Oct 3 '06 #3

P: n/a
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
Oct 3 '06 #4

P: n/a
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.
_______________________________
"Carl Daniel [VC++ MVP]" <cp*****************************@mvps.org.nospam >
wrote in message news:uu*************@TK2MSFTNGP02.phx.gbl...
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


Oct 4 '06 #5

P: n/a
"Champika Nirosh" wrote:
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]" <cp*****************************@mvps.org.nospam >
wrote in message news:uu*************@TK2MSFTNGP02.phx.gbl...
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


Oct 4 '06 #6

P: n/a
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." <pa*****@NOwritemeNO.comwrote in message
news:A2**********************************@microsof t.com...
"Champika Nirosh" wrote:
>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]"
<cp*****************************@mvps.org.nospa m>
wrote in message news:uu*************@TK2MSFTNGP02.phx.gbl...
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




Oct 10 '06 #7

This discussion thread is closed

Replies have been disabled for this discussion.