Subj : Another suggestion.... To : Angus Mcleod From : Deuce Date : Mon May 30 2005 05:49 pm Re: Another suggestion.... By: Angus Mcleod to Deuce on Mon May 30 2005 18:40:00 > > > Well whatever you want to call it, i'm sure theres a way. Maybe someth > > > like: > > > > > > Slow defined ANSI screens to display at: ##% (i.e - 10% of normal, 25% > > > normal, 5% of normal) and the sysop can just mess with the %age number > > > it looks like it's going at the correct speed. > > > > Would you like me to bore you with teh technical details of why it's not > > possible? > > Bore me! Bore me! But first, go and REEEEEED the post from TW so you can > UNNERSTAAAAAAN what it is he's talking about. I'll start with the simplest issue and see if you still want more... TCP is a packets based protocol. That is to say that data is sent in discrete groupes of bytes which arrive at effectively the same instant. Generally speaking, you want to send that largest possible packets. In general, that's 1500 bytes. Synchronet on the other hand will by default attempt to send ni 1024 bytes groups. All 1024 bytes *will* arrive at the other end at EXACTLY the same time (unless something causes a packet to be split, a different issue I won't address) Because if this there is exactly zero time between one char and the next... there is an infinite cps rate per packet (generally as close to 1024 as Synchronet can make it) If Synchronet were to use a single-byte packets size (And you CAN tell it to do this currently if you are insane) then it will take *at least* fourty times as much bandwidth to send a single ANSI. This is because every TCP packet has at least 40 bytes of header information. So, pretending you have a 128kbps upsteam (common) your maximum possible transmit speed using a non-infinite cps rate would be 409cps which is comparible to a 4096bps modem. This is far slower than anyone would want their ANSIs displayed... and if you have more than one caller, this bandwidth is shared between them. So, due to the bursty nature of TCP traffic, ANSI animations will be either *very* high bandwidth, or choppy. For large screens, it's either hery high bandwidth, or you get a number of lines (Probobly around 3-10 depending on just how ANSIfied they are) at a time, then a pause, then the 3-10 more etc. that is merely problem number one. More issues I can bore you with are round trip time, fragmenting packets, latency, and bandwidth sharing between multiple connections (to *anything* via your internet connection)/ For those who want to experience a small taste of the joy of one-byte packets, in the [BBS] section of your .ini file, modify OutbufHighwaterMark=1024 to OutbufHighwaterMark=1 And change the value of OutbufDrainTimeout to 1 also. --- þ Synchronet þ ``Penguins make tasty snacks'' .