Talk:Port (computer networking)

From Wikipedia, the free encyclopedia
Jump to: navigation, search
WikiProject Computing / Networking (Rated Start-class, Low-importance)
WikiProject icon This article is within the scope of WikiProject Computing, a collaborative effort to improve the coverage of computers, computing, and information technology on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Low  This article has been rated as Low-importance on the project's importance scale.
Taskforce icon
This article is supported by Networking task force (marked as Mid-importance).
WikiProject Internet (Rated Start-class, Mid-importance)
WikiProject icon This article is within the scope of WikiProject Internet, a collaborative effort to improve the coverage of the Internet on Wikipedia. If you would like to participate, please visit the project page, where you can join the discussion and see a list of open tasks.
Start-Class article Start  This article has been rated as Start-Class on the project's quality scale.
 Mid  This article has been rated as Mid-importance on the project's importance scale.

e-mail server example[edit]

A server used for sending and receiving e-mail provides both an SMTP service (for sending) and a POP3 service (for receiving).

I found this confusing. An e-mail server sends e-mail contents to the client, but this amounts to receiving e-mail from the point of view of the user. Similarly, it receives content from the client, but this is part of sending e-mail. In addition, it sends outgoing messages to and receives incoming messages from the outside world. So "receiving" could plausibly mean any of three things. (talk) 03:15, 3 October 2009 (UTC)

You are quite correct about your observation. I have rewritten that paragraph to address your concern. Thank you. Kbrose (talk) 03:34, 3 October 2009 (UTC)

port scanning[edit]

"Because different services commonly listen on different port numbers, the practice of attempting to connect in sequence to a wide range of **services** on a single computer is commonly known as port scanning"

Is **services** supposed to be 'ports'?

Yes. There is a service behind each port but changing services to ports is an improvement. I've made the change. --Kvng (talk) 23:19, 6 May 2010 (UTC)

New name[edit]

I assume that Port number would be preferred over the current title (Port number (Internet socket)). Port number redirects here. I've requested speedy deletion of the Port number redirect page. --Kvng (talk) 18:13, 31 August 2010 (UTC)

Well, that's certainly a possibility, which I had contemplated as well. Port number could be ambiguous, switches or routers have port numbers as well. So, I figured leave 'port number' as redirect in case someone disputes primary usage and wants a disambiguation page. Kbrose (talk) 18:41, 31 August 2010 (UTC)
One can always create Port number (disambiguation) if the need arises. --Kvng (talk) 19:58, 31 August 2010 (UTC)

Dynamic ports[edit]

Is dynamic port a synonym for ephemeral port. The article says "The dynamic or private ports are those from 49152 through 65535. One common use is for ephemeral ports." what are the other uses? --Kvng (talk) 17:25, 13 March 2011 (UTC)

Question / Idea[edit]

I have an idea about a feature that would change how the internet worked.

I propose that DNS have resource record types such as: porthttp,porthttps,portsmtp,portsmtps,portimap,portimaps,portpop3,portpop3s,portftp,portftps,etc...

I appears to me that such a move would change the way the world relies on IP addresses, since we appear to be running out. If you think how many servers there are in the world that have static IP addresses that only host one web page or even one service.

It seems like it would be fairly easy to implement a record type lookup to determine what port a website is using. The same thing could be accomplished for looking up what port a mail server is using. Yes the web browsers of the world could be adapted to do a ip and port lookup.

SSL Certificates could be adapted to include both the domain name and port.

DNS record types could be created and used to register what port a webpage is on.

For example: My webpage would have two DNS records. Record Type "A" host record, = Record Type "porthttp" port record, = 80

This type of resource lookup would allow the internet to host a website or service on which ever port they wanted and would prevent the world from relying on common ports as the answer of where am I going to put my service.

Think about this. Currently one static IP address can only host one website service on a single static IP address. Routing and NAT take care of this. The only problem is there is no DNS record to lookup a port for the expected service. If a single IP address can have 65535 ports then a single IP NAT address could host 65535 websites on 65535 different ports. All is need is the ability to find the port that the http service is located on.

I also see this as a chance to solve the world's problem with ISP's blocking commonly used ports.

I don't have the programming skills to do the work, but if the idea was communicated to the world, the right people could make it happen.

09:55, 28 July 2011 (UTC) — Preceding unsigned comment added by (talk)

It's important to explain WHY ports exist[edit]

I added an explanation into this article several years ago, but someone deleted it. That makes no sense because right now, the article doesn't explain WHY ports are necessary. For laypersons who don't understand computer science, ports (along with most computer science concepts) are totally mysterious, and the article as it stands doesn't help them understand ports one bit. The article should have an explanation that ports are used to uniquely identify different programs running on computers linked to a network so that multiple programs can multiplex multiple virtual connections over the physical network connection; otherwise, only one program could open a connection over the physical layer at any particular time (since the only unique identifier would be the IP address itself). (The obvious analogy is to the old bulletin board systems, where a single monolithic client had full control over a PSTN phone line and talked directly to the BBS at the other end.) Any objections? --Coolcaesar (talk) 08:27, 4 August 2011 (UTC)

Indeed, the article needs help. One issue is that you added this to the lead section without any source. It was then changed also without any source to describe "well known" ports. I do think it is important to mention that port numbers are essentially a form of multiplexing, but the current description of this does not seem right either. Ports are used in peer-to-peer protocols as well as client-server, and on both single tasking and multitasking operating systems. But multiplexing is only needed if there are multiple connections (even if only on one side). Generally the best approach is to add information in the body with citations, and then have the summary in the lead. W Nowicki (talk) 17:40, 4 August 2011 (UTC)

I, for one, would appreciate that information being added back; I came here doing personal study to supplement a class in networking, and thought the article jumped right in without recognizing that the reader might need that "layperson" description. Please consider it. — Preceding unsigned comment added by (talk) 13:49, 9 October 2012 (UTC)

Port conflict[edit]

The limitation that only one program can listen to a IP:port derives from the BSD socket implementation. There is no port "conflict" when you bind to different IPs on the same port. For example you can have multiple HTTPS virtual sites on different IPs on the same machine, on the same interface, and on the same port. --Mircea.Vutcovici (talk) 02:30, 9 October 2011 (UTC)

TCP/IP bias[edit]

A port is associated with


In the case of TCP/IP, a port is associated with

or some such

G. Robert Shiplett 13:07, 10 January 2013 (UTC)


Can someone tell me what the improvement is in this change. I don't see it. ~KvnG

no redirection and https — Preceding unsigned comment added by (talk) 19:49, 27 January 2014 (UTC)

Globally unique[edit]

The short paragraph in the lede about some combination(s) of IP address and port needing to be 'globally unique' is drifting off into incomprehensibility, IMHO. I see it was added in [this edit under the comment, "Restating this for clarity." When people feel they need to re-state things within an article, and begin doing so with the WP:MoS violating construct "Note that..." you know it ain't gonna be good, IMHO. The whole precept of the paragraph is flawed, as every IP address is globally unique anyway, so of course anything that includes it will be too: Port numbers are not there to stop the internet getting muddled between ambiguous addresses. A web server could be dealing with thousands of simultaneous requests all on port 80: the 80 isn't there to stop the server getting muddled between all the simultaneous requests as they are all for port 80. There is no benefit in directly addressing our poor benighted readers to tell to 'note' something that is neither true no helpful, nor to my knowledge ever emphasised by textbooks on this topic. What is unique is that there should be only one process bound to any one TCP port. But even that gets hard to explain as computers can have multiple network cards (NICs), or multiple IP addresses assigned to the same NIC, and anyway even without that, you can have multiple UDP processes sharing the same IP and port. It isn't one of the main problems; people don't misunderstand ports because they try to bind multiple processes incorrectly - it never happens as the binding is taken care of by software that would just throw an error if you tried. Therefore, I think it should come out of the lede, and so I have removed it. --Nigelj (talk) 13:09, 20 October 2014 (UTC)

Ports provide a multiplexing service on each server-side port number[edit]

"In the client-server model of application architecture, ports are used to provide a multiplexing service on each server-side port number that network clients connect to for service initiation, after which communication can be reestablished on other connection-specific port numbers."

What does that even mean? I found this in the lede. I don't know what the author here is trying to say. The WP:LEDE is meant to summarise the main points of the article, and as far as I can see, nowhere else in the article is multiplexing mentioned, nor this extra service that ports are being alleged to provide. If I have missed it, please can someone provide a reference and a clearer statement of this extra feature. In the meantime, I have removed this text from the lede. --Nigelj (talk) 13:16, 20 October 2014 (UTC)

This article needs to explain why in the lead paragraph[edit]

For persons with no computer science experience, the concept of a port is utterly bewildering until you explain to them why, then they get it. That's why that sentence was in there that Kbrose took out back in February. I am putting it back for the second time. --Coolcaesar (talk) 16:52, 29 May 2015 (UTC)

Okay, this is getting REALLY irritating. I am putting this back for the third time. Please respond on this point.
For anyone with no background in computer science, the entire first four paragraphs of this article are complete gibberish because you're explaining the what but not the why. I understand it only because I spent many years studying computer science and many programming and scripting languages plus x86 assembly. Most people have not. --Coolcaesar (talk) 04:23, 14 January 2016 (UTC)