Playlist you might like: HLD Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c63W58rpNFDwdrBnq5G3EfT7 LLD Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c61X_9e6Net0WdYZidm7zooW JAVA Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c63f469AyV78np0rbxRFppkx
Great video! Though I find one thing confusing in your video - you mentioned that we need to configure a separate proxy for each application. it is correct that proxies operate at application level but it means that it can operate at the application layer (Layer 7 of the OSI model) and are aware of the specifics of different protocols like HTTP, HTTPS, and FTP. The modern proxies can handle different types of proxies, for eg. Squid proxy can manage both HTTP and HTTPS traffic.
I have one another doubt is as u said proxy server works at application layer and we need to setup different proxy for each application means i don't understand this . You mean to say if I have 3 different web application than i need 3 different proxy servers isn't? If is this the case than why ? Why need 3 different proxy servers to service multiple applications because you also explained multiple clients can request to proxy servers and they could be different applications/we applications right?
Hi Gurupreet, Proxy works at application layer. My understanding is, lets take your System, you can connect to Proxy server through your web browser (application) by providing Proxy server IP and Port details. Similar in other client, i can set up the same proxy server details. So same proxy server can be used by multiple clients. Also, As you know at Application layer there are many protocols like HTTP, FTP, SMTP etc. So for each protocol, you need a different proxy like HTTP proxy, FTP proxy to handle appropriate request
I like tis explanation....very very nice... But I HAVE TWO QUESTIONS. 1. how can I set up a proxy server... 2. I learnt that Application level firewalls are much more better that Traditional firewalls if this is true, can we say Proxy firewalls are better that Trad FIrewalls. Lemme add one more question YOu said Proxy functions on Application level and I need to set it up for every application. I understand this concept from the client side but I don get how this applies for the Server side (the reverse proxy).
Good explanation but in case of forward proxy as you explain no server can talk or know the client because proxy server send the request to actual server by its IP but here is the catch if actual server want to know the IP of client it can be known by using http headers of request named X-Forward-For , right than how client can hide from actual server... Don't understand it 😢
:) Gurupreet you are right. XFF (x-forward-for) do contain the chain of IP addresses (original IP and intermediate proxy IPS), but it do not guarantee the authenticity of it. Many server do need Client IP address, and that's why this XFF added in the header. But my take is, server can only use this info, if it has whitelist of the proxy servers, otherwise its possible that, some script have been added in XFF and server consume it and store it in DB and then it's an issue. I will go through more on this, thanks for raising this point.
A CDN is considered a reverse proxy as it serves content on behalf of the origin server, optimizing performance by caching and delivering content closer to users. In contrast, a forward proxy sits between clients and servers, forwarding requests to the server on behalf of clients. Hope that clarifies, CDN not only sits between client and server, it provides the content too on server behalf.
9:00 how is grouping useful? Suppose I send some abc request on Google. You sent xyz request. How does it send as single request? Or if it goes sequentially won't opposite server has rate limiting? Or some queue will be used by proxy?
I think it's misleading to say that they combine the request. Each client request is forwarded as its own individual request. However, If multiple clients request the same resource, the proxy can serve the cached version to subsequent clients, reducing the number of requests sent to the external server. Also proxies can handle rate liming by queuing requests. If the target server has rate limits, the proxy can temporarily hold (queue) additional requests and forward them sequentially to stay within the rate limits.
Hello Shreyansh , amazing explanation! How do we send data from VPN server to destination server as at VPN server we have decrypted the data so again it is open to vulnerabilities, right?
The primary purpose of the VPN tunnel is to secure data between your device and the VPN server. This prevents eavesdroppers on your local network (like an unsecured Wi-Fi network) or your ISP from intercepting and reading your data. Once data is decrypted at the VPN server, it is indeed in a vulnerable state as it travels to the destination server. Now it is similar to regular internet traffic unless additional security measures are in place.
Playlist you might like:
HLD Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c63W58rpNFDwdrBnq5G3EfT7
LLD Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c61X_9e6Net0WdYZidm7zooW
JAVA Basics to Advanced: ruclips.net/p/PL6W8uoQQ2c63f469AyV78np0rbxRFppkx
Enjoying and learning please videos thoda jaldi upload karo system design pe, coz kaffi time hogya course start hue
The more we appreciate the content is less. Mazza aagya.
thank you
OMG!! Crystal Clear Explanation Thanks 😇
Thank you
Great video! Though I find one thing confusing in your video - you mentioned that we need to configure a separate proxy for each application. it is correct that proxies operate at application level but it means that it can operate at the application layer (Layer 7 of the OSI model) and are aware of the specifics of different protocols like HTTP, HTTPS, and FTP.
The modern proxies can handle different types of proxies, for eg. Squid proxy can manage both HTTP and HTTPS traffic.
Excellent explaination
Worth spending time, good explanation for beginner 👍
Thank you
Clear explanation 🙌. Thank you ❤
Thanks
Very Useful. Thanks for sharing it
Thank you
Nice content, added your playlist to the watchlist and will give valuable feedback.
Thanks
I have one another doubt is as u said proxy server works at application layer and we need to setup different proxy for each application means i don't understand this . You mean to say if I have 3 different web application than i need 3 different proxy servers isn't? If is this the case than why ? Why need 3 different proxy servers to service multiple applications because you also explained multiple clients can request to proxy servers and they could be different applications/we applications right?
Hi Gurupreet, Proxy works at application layer.
My understanding is, lets take your System, you can connect to Proxy server through your web browser (application) by providing Proxy server IP and Port details.
Similar in other client, i can set up the same proxy server details.
So same proxy server can be used by multiple clients.
Also,
As you know at Application layer there are many protocols like HTTP, FTP, SMTP etc.
So for each protocol, you need a different proxy like HTTP proxy, FTP proxy to handle appropriate request
@@ConceptandCoding oh ok now i got it thanks,, by the way can not we have any proxy as of now that handles multiple application protocol ?
Load Balancer also brings anonymity. Reverse Proxy seems to be superset of Load Balancer.
On point. Very good content
Thanks
Thanks for the amazing playlist ❤
what's the difference b/w reverse proxy and api gateway?
I like tis explanation....very very nice... But I HAVE TWO QUESTIONS. 1. how can I set up a proxy server... 2. I learnt that Application level firewalls are much more better that Traditional firewalls if this is true, can we say Proxy firewalls are better that Trad FIrewalls. Lemme add one more question YOu said Proxy functions on Application level and I need to set it up for every application. I understand this concept from the client side but I don get how this applies for the Server side (the reverse proxy).
The session is clear. how about sharing a document for this session if availbale? Thank you.
Can we use proxy and reverse proxy both at a same time ?
Yes we can
I love your mom and child example Shrayansh
Thank you
WOW
thanks
What is meant by group of requests here?
I am still confused in Reverse Proxy. Can you help Shrayansh?
Good explanation but in case of forward proxy as you explain no server can talk or know the client because proxy server send the request to actual server by its IP but here is the catch if actual server want to know the IP of client it can be known by using http headers of request named X-Forward-For , right than how client can hide from actual server... Don't understand it 😢
:) Gurupreet you are right.
XFF (x-forward-for) do contain the chain of IP addresses (original IP and intermediate proxy IPS), but it do not guarantee the authenticity of it.
Many server do need Client IP address, and that's why this XFF added in the header.
But my take is, server can only use this info, if it has whitelist of the proxy servers, otherwise its possible that, some script have been added in XFF and server consume it and store it in DB and then it's an issue.
I will go through more on this, thanks for raising this point.
👍👍
Hi! I have a small doubt, if CDN sits between client and server, shouldn't it be considered as a forward proxy rather than a reverse proxy?
A CDN is considered a reverse proxy as it serves content on behalf of the origin server, optimizing performance by caching and delivering content closer to users. In contrast, a forward proxy sits between clients and servers, forwarding requests to the server on behalf of clients.
Hope that clarifies, CDN not only sits between client and server, it provides the content too on server behalf.
@@ConceptandCoding - yeah, thanks for the clarification.
9:00 how is grouping useful? Suppose I send some abc request on Google. You sent xyz request. How does it send as single request? Or if it goes sequentially won't opposite server has rate limiting? Or some queue will be used by proxy?
I think it's misleading to say that they combine the request. Each client request is forwarded as its own individual request.
However, If multiple clients request the same resource, the proxy can serve the cached version to subsequent clients, reducing the number of requests sent to the external server.
Also proxies can handle rate liming by queuing requests. If the target server has rate limits, the proxy can temporarily hold (queue) additional requests and forward them sequentially to stay within the rate limits.
Hello Shreyansh , amazing explanation!
How do we send data from VPN server to destination server as at VPN server we have decrypted the data so again it is open to vulnerabilities, right?
The primary purpose of the VPN tunnel is to secure data between your device and the VPN server. This prevents eavesdroppers on your local network (like an unsecured Wi-Fi network) or your ISP from intercepting and reading your data.
Once data is decrypted at the VPN server, it is indeed in a vulnerable state as it travels to the destination server. Now it is similar to regular internet traffic unless additional security measures are in place.
how to hide ips of server from the client? What if client knows ip and directly wants to access the server? how to handle that?
may be, server can accepts request only from proxy.
@@coffeecoding297 but how to configure that?
That is what reverse proxy is used for, to hide the IP address of the server, so now only the IP of reverse proxy is exposed to the client.
please explain Proxy v/s API Gateway as well
If I relate DNS with forward proxy then it is fine.🤔
Really need to be focused on the points when explaining the difference.