Back to blog
Gabija Fatenaite
There’s a high chance you’ve seen “SOCKS proxies” as a default option on browsers and specific applications when going through your proxy settings. Yet, default doesn’t necessarily stand as the best option. In this article, we’ll expand upon what is SOCKS5 and why it might not be the best choice from a security perspective.
Before we go in-depth about SOCKS5, going over the basics might help you understand the subject more thoroughly. We’ll go over internet protocols and what they are.
To better understand where SOCKS5 proxies are coming from, let’s start from the beginning. The internet is mainly built on top of three protocols:
Internet Control Messaging Protocol (ICMP)
Transmission Control Protocol (TCP)
User Datagram Protocol (UDP)
ICMP is a control protocol. This means that it was designed not to carry application data but rather information about the status of the network itself. The best-known example of ICMP in practice is the “ping” utility.
The protocols that are important in our case are TCP and UDP.
Both TCP and UDP are transportation protocols meant to pass data. The difference between TCP and UDP is that the former almost guarantees that all sent data will reach its destination in the correct order, as well as make other optimizations and error checks.
In UDP's case, it’s a connectionless protocol. The data that reaches its destination can arrive without order or not arrive at all. Usually, this sort of connection is used in real-time communication where the data delivery speed is preferable over receiving the correct data.
When it comes to Oxylabs’ proxies, both protocols are available for use. Our Dedicated Datacenter Proxies support both TCP and UDP, while Residential and Mobile Proxies support the TCP protocol.
So, where does a SOCKS proxy stand in all of this? The infographic below summarizes what we’ll go through in this article.
Let’s first answer what SOCKS is:
SOCKS is an internet protocol that allows one device to send data to another via a third device. In other words, this third device would be called a SOCKS server or a SOCKS proxy.
So what does the SOCKS proxy server do? It creates a connection to any other server that stands behind a firewall and exchanges network packets between the client and the actual server.
SOCKS proxies are usually needed where a TCP connection is prohibited, and data can be reached only through UDP. Sadly, in some cases, such a connection is used for illegal reasons, such as torrent streaming. However, using SOCKS5 proxies isn’t illegal as they’re just a tool that enables a specific way to connect to the internet.
SOCKS5 is the latest version of the SOCKS protocol. The difference between SOCKS5 and older versions of it is its improved security and the ability to support UDP traffic.
There are many possible ways to use SOCKS proxies. Tech enthusiasts often find new and innovative ways to use these proxies, but most of these cases are very niche and rarely used by businesses. If you wish to learn more about SOCKS5 proxies and how they compare to HTTP-based ones, see the video below.
SOCKS5 proxies are often used for live calls or streaming. Streaming websites commonly use User Datagram Protocol (UDP) to send data, and for now, SOCKS5 are the main proxies that can transfer you through to a UDP session.
To put it simply, if you think that HTTP(S) traffic won’t be enough for you and you need a proxy for non-TCP protocols, then SOCKS5 proxies are the way to go. Take note that in almost all cases, HTTP(S) traffic won’t be blocked by a firewall, and you might not need a SOCKS5 proxy.
This is the short version of what is SOCKS5 and how it’s used.
The short answer: not really.
Long answer – it depends on what kind of data you need to scrape. In most cases, an HTTP(S) proxy is more than enough for most scraping jobs unless you need to do something more traffic-intensive, like video streaming.
Oxylabs’ proxies enable integration through several protocols, allowing you to switch between them when needed. Our Residential and Mobile Proxies support HTTP(S) and SOCKS5 connections, while Dedicated Datacenter Proxies allow connections through HTTP and SOCKS5 protocols.
The main problem with SOCKS5 proxies is that it doesn’t have standard tunnel encryption. Since the SOCKS5 request carries your password in cleartext, it isn’t recommended in situations where “sniffing” is likely to occur. Hence, any data passing through this proxy might easily get leaked.
Armed with the knowledge on what is a SOCKS5 proxy, making the decision whether to use them or HTTP(S) proxies should be easier. To make the decision even smoother, we’ll point out the benefits of both HTTP(S) proxies and SOCKS proxies.
HTTP(S):
You’ll be able to manage more requests/second with HTTP(S).
Most scraping jobs can be handled on an HTTP(S) connection.
You’ll have more advanced security and encryption while scraping.
With Oxylabs, you can rotate HTTP(S) proxies.
SOCKS5:
Useful when traffic-intensive scraping is required.
If you need to use SOCKS5 proxies for a business project, you should first consider their downsides. Since they don’t have standard tunnel encryption, your credentials, together with your data, might get leaked, creating high-risk situations. Yet, if that isn’t an issue in your case and your project is traffic-intensive – SOCKS5 may be the way to go.
HTTP(S) proxies, however, come with standard encryption and can do almost any scraping project as a SOCKS5 proxy would. If you’re interested to learn more about different kinds of proxy types, read our guide on what a proxy server is. Also, take a look at this useful source of SOCKS5 vs. HTTP proxy.
About the author
Gabija Fatenaite
Director of Product & Event Marketing
Gabija Fatenaite is a Director of Product & Event Marketing at Oxylabs. Having grown up on video games and the internet, she grew to find the tech side of things more and more interesting over the years. So if you ever find yourself wanting to learn more about proxies (or video games), feel free to contact her - she’ll be more than happy to answer you.
All information on Oxylabs Blog is provided on an "as is" basis and for informational purposes only. We make no representation and disclaim all liability with respect to your use of any information contained on Oxylabs Blog or any third-party websites that may be linked therein. Before engaging in scraping activities of any kind you should consult your legal advisors and carefully read the particular website's terms of service or receive a scraping license.
Get the latest news from data gathering world
Scale up your business with Oxylabs®