Tag Info

Hot answers tagged

22

You misunderstand port numbers quite severely: a server listens only on one port and can have large numbers of open sockets from clients connecting to that one port. On the TCP level the tuple (source ip, source port, destination ip, destination port) must be unique for each simultaneous connection. That means a single client cannot open more than 65535 ...


8

You are mistaken - the socket's uniqueness is determined by four factors: the local IP address the local port number the remote IP address the remote port number When offering network services, 1. and 2. typically are static (e.g. IP 10.0.0.1, port 80) but unless you are expecting thousands of connections from a single client (or a single NAT gateway), ...


8

I can't really answer the "who should I use" part of the question (as it's off-topic), but given that I do have significant experience in making sites/applications scale for high-traffic loads, I can definitely suggest that you look at getting a Reverse-Proxy CDN. The last company I worked for used Yottaa for this, and were able to use their services to ...


7

consider: outsourcing it or do it in-house, but do it well. ensure you have redundant internet connection, redundant hardware. instead of apache use one of agile webservers: lighthttpd or mathopd - they will handle high traffic much better. i assume you'll be facing tens of requests per second or more. if you expect to have few views per minute - ...


6

You could define the curves with different names: rt, real-time curve, bandwidth/delay guarantee. ls, link-share curve, bandwidth/delay sharing (based on the configuration of neighbour leaves) ul, upper limit curve, maximum bandwidth/delay it may attain. What for do I need a real-time curve at all? Assuming A1, A2, B1, B2 are all 128 kbit/s ...


5

DNS can be very well used for Load Balancing. But it's only able to do things like simple round robing. If you would want to implement something like a High Availability solution in DNS, by disabling IPs that aren't available, you would need to set the DNS TTL to some minimum value, which is not a good idea. In general its a much better idea to use ...


5

The traffic spike goes up to 6 hits /sec for up to 20-30 mins if you consider 6 hits per second a spike you need a reality check. I would consider 6 hits per second a zero load situation. During the spikes the response time gets really bad and goes up to more than two minutes for the page to be served Crappy programming or a very bad server, ...


5

It depends on the type of QoS you want to use. The world of QoS is vast and complex and there are many different techniques that can be combined in different ways to give a "guarantee" of service in each situation. Actually I'd say that reserving bandwidth for VoIP is a type of QoS policy. If you ask for a type of QoS policy in particular, you should ...


4

File sharing is based on ordinary TCP/IP, so the rules are no different than those that apply to other network applications. Hostnames from UNC paths will always be resolved first using DNS or NetBIOS and then the traffic will sent out based on a routing table. Since it will resolve to a local address, the traffic will never go out, unless you have some very ...


4

Reading the papers on HFSC and its cousins is not a good way of understanding it. The primary goal of the HFSC paper is to provide a rigorous mathematical proof of its claims, not explaining how it works. Indeed you can't understand how it works from the HFSC paper alone, you have to read the papers it references as well. If you have some problem with the ...


4

pfSense -- rrd/mrtg style graphs are built in, no configuration or 3rd party packages required.


3

For a free tool to parse the data (well new data); have you considered having a computer run ntop to collect the bandwidth use information? At my workplace we have a Pro 2040 with it's port mirrored to a monitoring computer to do just that. Additionally if you have something like cacti that will get information from your switches you can figure out who is ...


3

Assuming eth0 is a 100mbit Ethernet connection to the Cisco Router, it should be something like this (Isn’t it?): tc qdisc add dev eth0 root handle 1: htb default 2 # 100 mbps tc class add dev eth0 parent 1: classid 1:1 htb rate 100mbit # To LAN traffic tc class add dev eth0 parent 1:1 classid 1:2 htb rate 99000kbit ceil 100mbit # IN traffic tc class add ...


3

There is no formula. The best method is try to get some test equipment, and setup an environment similar to the production environment and test.


3

To try and answer your question, you need to get a better understanding of what is causing this slow-down. Here are a few things you could look at: do you have slow mysql queries during the spikes? (have a look at your mysql slow log) how many apache processes (if you are running apache) do you have running simultaneously during these spikes (see ps aux | ...


3

At L3 this is rather difficult to achieve - you would want to filter on HTTP request (or even response) headers rather than on IP addresses. While some packet filters offer "deep packet inspection" and PFSense offers some support for it as well, configuration is not as smooth as it could be. Consider forcing HTTP requests through Squid instead. It has some ...


2

I hope I have what is a straightforward question. Sorry, but this is pretty much the exact opposite. Scalability is a large set of design choices that pretty much need to get baked in from the start if you want it to be super easy. It's generally a lot of extra work, and if you've never built such a system before it's usually just easier to learn by ...


2

Andy Furniss found the culprit when I asked on the LARTC mailing list. What I didn't mention was that I was shaping traffic out of a tagged VLAN interface. The issue is, Linux does not set up a queue for a VLAN interface (i.e. txqueuelen is 0) and prefers to use the physical interface queue instead. Because of that, my bfifo qdiscs defaulted to a 1514 byte ...


2


2

Finally a guide that seems to explain most of the inconsistencies and also how the current implementation is different from the original paper: http://manpages.ubuntu.com/manpages/precise/man7/tc-hfsc.7.html According to this guide, many other guides and forum posts about HFSC are entirely nonsense; it just shows how complicated HFSC is, as many people who ...


2

There are a number of options. http://doc.pfsense.org/index.php/How_can_I_monitor_bandwidth_usage%3F


2

Put it in few words, eg. your connection is 100 Mbps. You Reserve 10 for VOIP. All the others protocols can get at best 90 Mbps. You QoS VOIP giving it the highest priority. All other protocols are routed after VOIP. If there's no VOIP, then 100 Mbps can be used. In telco worlds, usually QoS and reserved bandwidth are combined. By the way, 30 Mbps for ...


2

You can't do this with NAT because NAT only cares about IP Addresses and Ports (Layer 3 + 4). The HTTP Host header is above that so NAT implementations are never aware of it. To achieve what you are looking for, you need a Reverse Proxy. (Apache, Squid, nginx, lighttpd etc). A reverse proxy is capable of examining the Host header in the HTTP request and ...


2

Use Linux traffic control to limit the whole interface to 319Mbps. The 319 came from Google. They assume 30.4 days in a month. 60% of the time it's right all the time... Normally, transfer and storage sizes use binary prefixes (ie kb = 1024b; yes this is incorrectly using the 'kilo-' prefix, and should be using 'kibi-'... not getting into that). Line rates ...


2

I think you can use some netflow sensor (for example fprobe, ipcad) and then export it to some collector. I used UTM5, but it's paid. I think there should be some free netflow collectors. For momentary snapshot of traffic you can use iftop.


2

Netflow is the end all, be all for this type of monitoring. While there are netflow tools for Windows, my favorite toolset is nfdump+nfsen on Linux/Unix for collection and web-based report generation respectively. I have found this toolset does everything I want, and they're free. As for collecting flows for later analysis with one of these tools, your ...


2

take a look here - it's quite simple tutorial how to use htb qos mechanism. in essence you mark packets on iptables and then assign to different ques depending on mark. alternatively you might look at hfsc, it might actually work better with such slow internet connection, although i never used it. regarding packet size - i cannot imagine 20kB large packet. ...


2

I like using squid with the delay pools option as a really simple starting point. The weakness of this solution is that it will only help with types of traffic that can be forced through the proxy. To set it up you just put squid on your edge device configure as needed. The configure the clients for protocols that cannot be transparently intercepted.


1

There's a wonderful HowTo for Linux on advanced routing and traffic control. It includes a very nice section on bandwidth management by classifying traffic.



Only top voted, non community-wiki answers of a minimum length are eligible