Tuesday, April 25, 2017

Ping for MTU

Maximum Transmission Unit (MTU) earlier with Windows Vista, Microsoft users often found themselves with terrible connection difficulties due to the fact that IP packets were too big to fit into certain network protocols. The largest Ethernet packet is 1500 bytes, so some initial versions of Windows set their MTU size to a value less than 1500 to minimize the fragmentation of packets. The problem cropped up when you tried to connect to a technology other than Ethernet, such as DSL. Some DSL carriers couldn’t handle an MTU size greater than 1400. When your network’s packets are so large that they must be fragmented to fit into your ISPs packets, we call it an MTU mismatch. 
As a consequence, techs would tweak their MTU settings to improve throughput by matching up the MTU sizes between the ISP and their own network. This usually required a manual registry setting adjustment, although some older versions of Windows used third-party programs like Dr. TCP (Figure 19-11). This method is called “matching up” mismatched MTU settings.

Around 2007, Path MTU Discovery (PMTU), a new system to determine the best MTU setting automatically, was created. PMTU works by adding a new feature called the “Don’t Fragment (DF) flag” to the IP packet. A PMTU-aware operating system can automatically send a series of fixed-size ICMP packets (basically just pings) with the DF flag set to another device to see if it works. If it doesn’t work, the system lowers the MTU size and tries again until the ping is satisfied.

You can imitate this feature by running a ping yourself. Open a command prompt and run the following command: 

ping www.terra.com -f -l 1500

You should get results similar to the following:
Pinging www.terra.com [] with 1500 bytes of data: 
Packet needs to be fragmented but DF set. 
Packet needs to be fragmented but DF set. 
Packet needs to be fragmented but DF set. 
Packet needs to be fragmented but DF set. 

Ping statistics for 
 Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),

Try running the ping command again, this time setting the MTU size smaller:

C:\>ping www.terra.com -f -l 1400 

SQL vs NoSQL: as diferenças

O banco de dados SQL (Structured Query Language) foi um mecanismo primário de armazenamento de dados criado há mais de quatro décadas. O ...