What Happens When You Type a URL and Press Enter?
Imagine this.
It's 11 PM. You're at your desk in Kathmandu — maybe Koteshwor, maybe Lalitpur, doesn't matter. You've got NTC broadband running through a router that's been on since 2019. You open Chrome, type https://youtube.com, and hit Enter.
YouTube loads. You don't think twice about it.
But here's the thing — in that one second, your laptop and dozens of servers around the world just completed a handshake so complicated that it would take you an hour to explain it in a job interview. And most Nepali CS students? They give a half answer, lose the interviewer, and wonder what went wrong.
This guide is going to fix that. We're going to walk through exactly what happens — step by step — in plain language, with real examples from Nepal's internet reality. NTC. Ncell. WorldLink. The actual problems you've faced. Because understanding this stuff isn't just for interviews — it's how you become a better developer.
Let's go.
First Things First — What Even Is a URL? Before your browser does anything, it has to read what you typed.
A URL like https://youtube.com/watch?v=abc123 isn't just an address. It's a structured message broken into parts:
https — the scheme. Tell the browser: use HTTPS, and encrypt it.
youtube.com — the host. The server you're trying to reach.
/watch — the path. The specific page on that server.
?v=abc123 — the query string. Extra info being passed to the server.
Your browser reads this the way you'd read a postal address — country, city, street, house number. Each part tells it something different about where to go and how to get there.
Quick Nepali reality check: Ever notice that some sites load fine on Subisu but feel broken on NTC? Part of that starts right here — with how your ISP (Internet Service Provider) handles what comes next.
Step 1 — Your Browser Checks Its Memory First Before any network request goes out, your browser asks itself: "Have I been here before?"
Think of it like going to a nearby pati (roadside shelter) you visit every day. You don't need directions anymore — you already know the way. Your brain has cached the route.
Your browser does the same thing with websites. It keeps a local record of recently visited sites and their IP addresses. This is called the DNS cache.
It checks in this order:
Browser cache — Chrome, Firefox, etc. all store recent lookups locally.
Operating system cache — Windows or Linux keeps its own list.
Router cache — yes, your old TP-Link router at home also remembers recent addresses.
If any of these have the answer, the browser skips the next step entirely and jumps straight to making a connection. This is why YouTube often feels instant when you've already visited — your machine already knows where to find it.
Nepali reality: This is also why restarting your router sometimes "fixes" the internet. When something changes on a server and your router still has the old, wrong address cached — you flush it by rebooting. Fresh start.
Step 2 — DNS Resolution: The Internet's Phone Book If the cache has nothing from the previous step, your browser has to find out the IP address of the website you want. This is where DNS — the Domain Name System — comes in.
Here's the honest truth: computers don't understand youtube.com. They only understand numbers. IP addresses like “142.250.192.46”. DNS is the system that translates human-readable names into machine-readable numbers.
It's exactly like a phone book. You know your friend's name. The phone book gives you the number.
Here's how the lookup actually works — and this is the part most people get wrong in interviews:
The 4-step DNS chain When you type a website like YouTube, your request first goes to your ISP’s DNS resolver (for example, NTC in Nepal). Its job is to find the website’s address for you. If it already has the answer saved (cached), it replies immediately. If not, it has to go out and look for it.
The resolver then starts a chain of queries. It first contacts a global root nameserver, which doesn’t know the exact address but knows who manages domains like “.com”. That points it to the .com nameserver, which then directs it to YouTube’s own authoritative server. Finally, that server returns the actual IP address of YouTube, and the answer travels all the way back to your browser.
This entire process can take anywhere from about 20ms to over 200ms depending on whether the answer was cached or not. The important detail for Nepal is that most of this lookup doesn’t happen locally. These requests are often routed to nearby international locations like Delhi, Mumbai, or even Singapore because Nepal has very limited DNS infrastructure.
So before your device even starts loading the website itself, your request may have already traveled outside the country and back. That small delay you sometimes notice—when a page seems to pause or “think” before loading—is partly caused by this DNS lookup process happening in the background.
The real Nepali DNS problem Here's something almost nobody talks about in Nepali tech circles.
NTC's DNS resolver is notoriously slow and has outdated cache. What this means practically: when a new website launches or a server changes its IP address, NTC users are sometimes the last to know. You try to open a site and get nothing — while your friend on Worldlink opens it fine. Same internet, different DNS.
The fix is simple and most developers already know it: switch your DNS to 1.1.1.1 (Cloudflare) or 8.8.8.8 (Google). These are public resolvers that are faster, better maintained, and more reliable than what your ISP gives you by default.
Step 3 — TCP Handshake: “Making the Connection” Now your browser knows the IP address. But knowing someone's address and actually knocking on their door are two different things.
Before any data is sent, your browser and the server have to establish a connection. They do this using TCP — Transmission Control Protocol.
TCP uses what's called a 3-way handshake. Think of it like this:
You: "Hey, can you hear me?" (SYN)
Server: "Yeah I can hear you, can you hear me?" (SYN-ACK)
You: "Yes! Let's talk." (ACK)
That's it. Three messages. After that, the connection is open and data can flow.
Why does this exist? Because the internet is fundamentally unreliable. Packets get dropped, arrive out of order, or get duplicated. TCP adds a guarantee layer on top of raw internet — it ensures everything arrives, and in the right order. Without it, a downloaded file would be corrupted half the time.
The Nepal latency problem Here's where geography starts hurting us.
One round-trip from Kathmandu to a server in the US takes roughly 250-300 milliseconds. That's a quarter of a second, just for the handshake — before a single byte of the actual website is downloaded.
Most international websites — especially American ones — don't have servers in South Asia. So your request goes from Kathmandu, through NTC or WorldLink's international fiber links (which mostly exit through India), across undersea cables, and all the way to a data center in Virginia or Oregon.
A CDN — Content Delivery Network — is basically a system of servers spread around the world that store copies of a website's content close to the people requesting it. Instead of every user hitting one server in California, someone in Kathmandu hits a server in Mumbai.
Google has CDN nodes in Mumbai and Singapore. So when you load YouTube, the video isn't coming from California — it's coming from a server a few hundred kilometers away. That's why YouTube feels snappy even on average NTC broadband. Meanwhile, some random American startup with a single server in Virginia and no CDN? Every request from Kathmandu travels halfway around the world and back. That's why it feels like loading pages over dial-up from the early 2000s.
Step 4 — TLS Handshake: Locking the Door Before You Talk If the URL starts with https:// — and basically every serious website does now — there's one more handshake that happens after TCP.
TLS (Transport Layer Security) is the encryption layer. It's what makes the little padlock appear in your browser. Without it, everything you send and receive — passwords, bank details, messages — travels as plain text that anyone on the same network can read.
Here's what TLS does in simple terms:
The server sends a certificate, which is like a digital ID card to prove it’s really YouTube and not a fake site pretending to be it.
Your browser then checks this ID with trusted companies (like DigiCert or Let’s Encrypt) to make sure it’s valid. If everything looks good, your browser and the server create a shared secret key.
From that point on, all communication is encrypted — meaning it’s turned into a secure code that only your browser and the website can understand, so even your ISP can’t see what you’re doing.
Why this matters specifically in Nepal A lot of older Nepali websites — government sites, some local businesses — still run on plain http://. No padlock. No encryption.
When you log into one of these sites from a cafe in New Road, or from a public WiFi hotspot in Thamel, anyone on that same network can potentially intercept what you're sending. Username, password, form data — all of it visible to anyone with basic network tools.
This isn't hypothetical. Public WiFi attacks are real and they're easier than most people think. If a Nepali website doesn't have HTTPS in 2026, that's a serious problem for its users.
Step 5 — Your Browser Finally Speaks Up Connection open, encryption set up. Now your browser finally sends the actual request.
An HTTP request is just a text message. It looks something like this:
GET /watch?v=abc123 HTTP/2
Host: youtube.com User-Agent: Mozilla/5.0 (Chrome...)
Accept-Language: en-US, ne
Cookie: [your login session]
Line by line:
GET — the method. "Give me this resource." (POST would mean "here's data, do something with it.")
/watch?v=abc123 — the specific page being requested.
Host — which website (one server can host many sites).
User-Agent — what browser and OS you're using. Servers use this to adapt the response.
Cookie — how the server knows you're logged in.
HTTP/1.1 vs HTTP/2 vs HTTP/3 — why it matters for Nepal HTTP/1.1 (the old one) — processes one request at a time per connection. Loading a page with 30 resources (images, CSS files, scripts) means 30 sequential trips. Slow.
HTTP/2 (most modern sites) — sends multiple requests simultaneously over one connection. Loading that same page is much faster because resources download in parallel.
HTTP/3 (newest) — runs on a protocol called QUIC instead of TCP. It's specifically designed for unreliable connections — like mobile networks. For Nepali users on Ncell 4G switching between towers, HTTP/3 can make a noticeable difference because it handles packet loss better than TCP does.
If you're building a website for Nepali users, making sure your server supports HTTP/2 at minimum is not optional. It's basic competence.
Step 6 — What the Server Actually Does Your request arrives. Now the server has to figure out what to give you.
For a simple static page — like a blog post with no login — the server just finds the HTML file and sends it back. Fast and simple.
For something like YouTube or a banking app, it's much more complex:
Web server (usually Nginx or Apache) receives your request.
It passes the request to the application server — the code that runs the actual logic (Python, Node.js, PHP, etc.).
The app server queries the database — "What videos should this user see? What's their history?"
The database returns data.
The app server assembles a response — an HTML page, or JSON data.
The web server sends it back to you.
A modern app might complete all of this in under 100ms. Or it might take 3 seconds if the database query is unoptimised. This is literally what backend developers and DevOps engineers spend their careers improving.
The CDN factor — and why it matters so much for Nepal CDN stands for Content Delivery Network. Instead of serving everything from one server in America, a CDN distributes copies of static content (images, videos, CSS, JavaScript) to servers around the world.
The nearest CDN nodes to Nepal are typically in Mumbai and Singapore. So when you load YouTube, the actual video file doesn't come from California — it comes from Mumbai, which is a fraction of the distance. Latency drops dramatically.
When a Nepali website doesn't use a CDN — which is unfortunately common — all traffic goes to one server, often in Singapore or even further. Every image, every stylesheet, every font file travels the full distance. This is a major reason why many locally-built Nepali websites feel slow even on decent internet.
If you're going to take one DevOps lesson from this article: put a CDN in front of your website. Cloudflare has a generous free tier. It will make a measurable difference for your Nepali audience.
Step 7 — Your Browser Builds the Page The server sends back HTML. Now your browser has to turn that text into the visual page you're looking at. This process is called the Critical Rendering Path, and it's where a lot of the performance differences between fast and slow websites actually live.
Here's what happens:
HTML Parsing to DOM
The browser reads the HTML from top to bottom and builds a DOM — Document Object Model. Think of it as a family tree of every element on the page. is the grandparent. is the parent. Every is a child or grandchild. CSS Parsing to CSSOM
At the same time, the browser downloads and reads all the CSS files and builds a CSSOM — the same tree structure but for styles. Which element is what color, what size, what font. Render Tree
DOM and CSSOM merge into the Render Tree — the final list of everything that's actually visible on screen, with its computed styles. Layout
The browser calculates exactly where everything goes. How wide is this div? Where does this image sit? This is sometimes called reflow and it's expensive — if JavaScript changes the layout after the page loads, the browser has to do this again. Paint
Finally, pixels are drawn to your screen. Text, images, borders, shadows — all painted layer by layer. JavaScript Execution
Somewhere in this process, JavaScript files get downloaded and run. This is the sneaky performance killer. JavaScript blocks rendering by default — the browser has to stop everything, download the script, run it, and then continue. This is why slow websites often show a blank white screen for a second or two before anything appears. The fix: use defer or async attributes on script tags, or put scripts at the bottom of the HTML. This tells the browser to keep rendering and run the JavaScript after the page is already visible.
Note: Page load in plain HTML and keep JS at last to make the website faster.
Why Websites Feel Slow in Nepal — The Full Picture
Now that you understand every step, let’s connect it to the real Nepali internet experience:
Problem 1: Slow or outdated ISP DNS resolvers NTC’s DNS resolver can be slow. If a DNS lookup takes 200ms instead of 20ms, that’s extra delay before anything else even starts. Fix: Use faster public DNS like 1.1.1.1 or 8.8.8.8.
Problem 2: High latency to international servers A request from Kathmandu to a US server and back can take ~300ms per round trip. If a website needs 5 round trips before showing content, that’s already around 1.5 seconds lost just in travel time. Fix: Use CDNs, HTTP/2, and servers closer to South Asia.
Problem 3: Mobile network packet loss Networks like Ncell and NTC 4G can have inconsistent quality—especially outside Kathmandu. Packet loss forces data to be resent, adding delay. Fix: HTTP/3 handles this more efficiently.
Problem 4: No CDN on Nepali websites Many sites targeting Nepali users don’t use a CDN. That means every image, font, and script travels the full international distance for every visitor. Fix: Use Cloudflare’s free tier — can be set up in about 30 minutes.
Problem 5: Unoptimised JavaScript Heavy JavaScript is one of the biggest performance killers. A 5MB JS file takes time to download and even more time to process—especially on budget Android phones common in Nepal.
Problem 6: No HTTPS on older Nepali sites This is still an issue even in 2025. Without HTTPS, user data isn’t secure, and browsers show “Not Secure” warnings—hurting trust and traffic. Fix: Use Let’s Encrypt to get a free SSL certificate in minutes.
These small issues stack up, which is why websites can feel noticeably slower in Nepal compared to other regions.
From Start to Finish: The Full Flow
Step What's Happening Typical Time Nepal-Specific Problem
URL parsing Browser reads address 0ms —
Cache check Local DNS lookup ~0ms Old router caches wrong IP
DNS resolution Domain to IP address 20-200ms NTC resolver is slow
TCP handshake Open connection 1 RTT (100-300ms) High latency to foreign servers
TLS handshake Encrypt connection 1-2 RTT Adds time; HTTP/3 reduces this
HTTP request Ask for the page 1 RTT HTTP/1.1 wastes trips
Server processing Database, app logic 50ms-2s No CDN = full distance travel
Browser rendering Build and paint page 50-500ms Heavy JS hits budget phones hard
What This Means for You as a Nepali Developer
Understanding this pipeline isn't just trivia. It directly shapes the decisions you make when building websites and apps for Nepali users.
Your users are on mobile more than desktop. They're switching between NTC and Ncell. They're in places like Pokhara and Biratnagar where connectivity isn't as stable as Kathmandu. They're on mid-range Android phones, not MacBooks.
Every step in this pipeline is an opportunity to either lose them or keep them. Slow DNS? Lose them. No CDN? Lose them. Heavy JavaScript on a weak phone? Lose them.
The best Nepali developers don't just write code that works. They write code that works for the actual conditions Nepali users live in. That's a different and more valuable skill.
In Summary When you type a URL and press Enter, here's what actually happens:
Your browser reads the URL, checks its cache, asks DNS to find the IP address, opens a TCP connection, encrypts it with TLS, sends an HTTP request, waits for the server to process it, and finally renders the HTML into a page you can see.
Seven steps. Hundreds of milliseconds. Dozens of servers involved. All invisible, all automatic, all deeply interesting once you understand what's going on underneath.
Next time someone asks you this in an interview, don't just say "DNS lookup then HTTP request." Walk them through the steps, mention the Nepal-specific latency issues, and talk about CDNs and HTTP/3. That's the answer that makes interviewers write things down.
Found this useful? We write about DevOps, cloud infrastructure, and tech careers from a Nepali perspective every week. Subscribe the newsletter — no spam, just content like this.
Got a question or a different experience with NTC/Ncell performance? Drop it in the comments. We read every one.
FAQ Best internet service providers for home browsing in Nepal WorldLink Communications is Nepal's undisputed market leader and the only ISP to cross one million subscribers, holding roughly 31% of the fixed broadband market. ICT BYTE Dish Home has rapidly risen to second place despite only launching internet services in 2020, leveraging its existing DTH TV distribution network. Gadgetbyte Nepal Nepal Telecom sits at third and offers a unique triple-play service — internet, TV, and voice over a single fiber cable — which no other ISP matches. NepaliTelecom
For pure home browsing, the honest answer is: the best ISP is whichever one has strong infrastructure in your specific neighbourhood. Ask your neighbours before signing anything.
Most reliable ISPs for homes in Kathmandu Vianet has a strong foothold specifically in Kathmandu Valley with a large base of satisfied home and corporate users, and pioneered FTTH fiber in Nepal back in 2011. Gadgetbyte Nepal WorldLink has the widest urban coverage and bundled NetTV. Classic Tech pushes technological boundaries with Wi-Fi 6 and high-speed Tachyon plans going up to 1Gbps. TechKitab For Kathmandu specifically, all four — WorldLink, Vianet, Classic Tech, and Dish Home — are solid options. Compare their packages for your specific area at the time of subscribing since pricing changes frequently.
How to change DNS settings in Nepal (router method — affects all devices at once) Open your browser and type your router's IP address — usually 192.168.1.1 or 192.168.0.1
Log in with your router admin credentials (default is often admin/admin — check the sticker on your router)
Find the DNS settings under WAN, Internet, or Advanced settings
Replace the existing DNS with your preferred servers (see DNS section below)
Save and restart the router
For Windows: Go to Control Panel → Network → Change adapter settings → Right-click your connection → Properties → IPv4 → enter DNS manually. For Android: Go to Settings → Wi-Fi → long press your network → Modify → Advanced → change IP settings to Static → enter DNS.
How to improve browsing speed from Nepal The biggest practical improvements in order of impact:
Switch your DNS. Replacing NTC or Ncell's default resolver with 1.1.1.1 (Cloudflare) is the single easiest speed improvement and takes two minutes. Many Nepali users notice a difference immediately on international sites.
Use a wired connection where possible. Wi-Fi through walls and floors loses significant speed. A direct ethernet cable to your router gives you the full plan speed.
Restart your router regularly. Old routers with full caches slow down over time. A weekly restart helps.
Check your FUP usage. Nearly all Nepali ISPs market plans as "unlimited" but have Fair Usage Policy clauses that throttle your speed after a certain data threshold. Financehubnepal If your internet suddenly feels slow mid-month, check if you've hit your FUP limit.
Use a browser with good caching. Chrome and Firefox cache resources locally so repeat visits to the same sites load faster.
For streaming, use YouTube's quality settings to match your actual connection rather than letting it auto-select 4K on a 30Mbps connection.
Fastest DNS servers recommended for Nepal users DNS Provider Primary Secondary Best for Cloudflare 1.1.1.1 1.0.0.1 Speed + privacy Google 8.8.8.8 8.8.4.4 Reliability Quad9 9.9.9.9 149.112.112.112 Security OpenDNS 208.67.222.222 208.67.220.220 Parental controls Cloudflare uses Anycast routing, automatically connecting users to the nearest available server, making it one of the fastest DNS options worldwide. AdGuard DNS For most Nepali users, 1.1.1.1 is the recommended starting point. That said, actual performance varies by ISP and location — the best way to find your personal fastest DNS is to run a free tool called DNS Benchmark or Namebench which tests multiple servers from your exact connection.
DNS questions answered directly
- Fastest DNS server for Nepal?
Cloudflare 1.1.1.1 consistently benchmarks fastest for South Asian users because it has nodes in Mumbai and Singapore — the nearest international infrastructure to Nepal.
- Which DNS is better for home use?
Cloudflare 1.1.1.1 for speed, Quad9 9.9.9.9 if you want malware blocking built in. For families with children, OpenDNS offers content filtering at no cost.
- DNS provider in Nepal?
There are no major public DNS providers based inside Nepal. All public DNS options (Cloudflare, Google, Quad9) are international. Your ISP provides a local resolver by default but it is typically slower and less frequently updated than the public options above.
- Which DNS is better for gaming?
Cloudflare is a great choice for gaming due to its fast speed and stability, making it a solid upgrade from your ISP's DNS server. NordVPN However, be aware that DNS affects web page loading and security but doesn't directly impact in-game latency NordVPN — once a game is running, your ping is determined by your distance to the game server, not DNS. For games with servers in Singapore or India (PUBG, Free Fire, Valorant), DNS won't change your in-game ping much, but it will make the game launcher and updates faster.
- Is a custom DNS better for Nepali websites?
For Nepali websites specifically, the difference is smaller because local sites are geographically closer anyway. The biggest gain from switching DNS is on international sites where NTC's resolver might have stale or missing cache entries.
Which browsers offer the best privacy for Nepal users Firefox — open source, strong privacy defaults, blocks trackers by default, no corporate data collection incentive.
Brave — blocks ads and trackers at the browser level, has built-in HTTPS upgrading. Good choice for public WiFi use in Thamel or New Road.
Chrome — most widely used in Nepal but collects significant browsing data for Google's ad business. Fast and compatible with everything, but weakest on privacy.
Edge — improved privacy over Chrome, has a built-in VPN feature (limited free tier), good compatibility.
For online banking specifically: use any browser in a private/incognito window on a trusted network, verify the padlock and https:// before entering credentials, and avoid banking on public WiFi entirely.
Where to buy affordable internet plans in Nepal All major ISPs allow online signup through their websites. You can also compare plans on GadgetByte Nepal and NepalTelecom.com which maintain updated pricing lists. Pay with eSewa or Khalti for most ISPs. Annual plans almost always work out cheaper than monthly — NTC FTTH plans start from around Rs. 800/month and WorldLink from Rs. 1,200/month Financehubnepal with significant discounts on yearly commitments.
Affordable fiber internet in Pokhara specifically WiFi Nepal is available in Pokhara and is one of the most affordable options, with plans starting at Rs. 2,740/month for 50Mbps. NepaliTelecom WorldLink, Nepal Telecom FTTH, and a local provider called Pokhara Internet also operate there. Coverage varies significantly by neighbourhood, so checking with local neighbours about which ISPs actually have good infrastructure in your specific area is the most reliable research method. Financehubnepal
Guide to secure browser setup for online banking in Nepal Use a dedicated browser profile or private window for banking only
Always verify https:// and the padlock before logging in
Never save banking passwords in your browser
Enable two-factor authentication on your bank account if available (most Nepali banks now support OTP via SMS)
Avoid logging into banking sites on public WiFi — if you must, use a VPN
Keep your browser updated — outdated browsers have known security vulnerabilities
After banking, log out properly rather than just closing the tab
If using eSewa or Khalti, enable biometric or PIN lock on the app
The biggest risk for Nepali users isn't browser choice — it's logging into http:// (non-HTTPS) banking portals on shared networks. Always check for the padlock.

