Mar. 17th, 2011

jack: (Default)
The council fixed my 8.53 am pothole! Thank you, council.

They have a webpage to send reports of potholes they haven't fixed, but as far as I can see none to send "Thank you! We appreciate you. Don't listen to the complaints, we all love you" messages?

I admit that the balance of the chances heavily favour their current approach, but it seems depressing to be doing a necessary but thankless task and only ever hear complaints that you haven't done it yet. (Where or not its your personal fault that you hadn't done it sooner.)
jack: (Default)
Percy Jackson and the Lightning Thief. It's like watching two hours of MacAulë Culkin.

Except that it WOULD be, if the ancient greeks had Hephastus and Poseidon reversed, or if Tolkien had Aulë and Ulmo reversed, or if Disney had make Percy Hephastus' son instead of Poseidon's. FUCK YOU ANCIENT GREEKS AND FUCK YOU TOLKIEN AND FUCK YOU DISNEY FOR PREEMPTIVELY RUINING MY PUN[1].

So anyway, yeah. As expected, the concepts were pretty good, many of the translation of ancient greek concepts into modern terms were pretty nice (obviously lots was wrong, but may classic things were done ok, right down to basic concepts like "the sons of the gods trying to overthrow the gods in their turn").

But as expected, it suffered from having some random teenage guy as the main character, instead of someone interesting, and as expected the plot was a random collection of stuff. (I can't speak for the original it was based on?)

[1] This exact sentence has never appeared before on the internet.
jack: (Default)
OK, this is going to be massively oversimplified and riddled with inaccuracies, and the networking gurus on my friendslist are probably more prominent than the Jewish ones, so expect a number of corrections in the comments, but for the benefit of Liv and anyone else interested, a very brief overview.

An ethernet packet

- Has a header containing destination address, source address, type, data and a couple of other things
- The type is a number specifying what protocol is in the data. This is typically an IP ("Internet protocol") packet.
- The addresses are addresses of the physical network cards of the computers
- Which will (always?) be MAC addresses, ie. a six-byte number which every network card manufactured has a unique one.
- It is normally written in hexadecimal with semicolons, like 00:0E:78:5D:10:04
- It doesn't matter how they're assigned, except that each manufacturer has a different set of them to assign (sequentially or randomly) to network cards they manufacture
- These do not need to be unique across the whole world, they only need to be unique within one physical LAN or wireless network. But because you don't know which computers will be plugged together, they're ALL made unique
- If a computer has an ethernet cable and a wireless card, they will have different MAC (?)
- This is transmitted by the computer by physically changing the electric voltage on the wire, or by physically transmitting a short radio burst
- That means that the computers have to take turns transmitting and so on -- how to do that is what ethernet specifies
- This will be received by all computers on the wire or within range of the wireless, but ignored unless it has the appropriate destination address (and possibly appropriate content -- a computer not listening for IP traffic will just ignore any)
- There are special MAC addresses which mean "to everyone" which everyone receives (probably FF:FF:FF:FF:FF:FF but I can't remember). This is not used for normal TCP/IP traffic, but for some special network uses.

An IP packet

- Directly after the ethernet packet headers typically come IP packet headers
- Again, this is a source address, a destination address, and something indicating the content
- But this is coincidence, they're all different to the ethernet fields I discussed above
- The IP addresses are four bytes, typically written with dots like: 131.111.12.20
- Originally the idea was that each individual network would communicate by ethernet, and you'd connect them together by having some computers which were on two neighbouring networks
- And every computer would have an IP address assigned by some independent body somewhere (originally Job Postel, later ICANN)
- And computers would maintain routing tables, saying that "messages for THESE IP addresses should be passed to THOSE networks, and so on"
- Which is what IP does (routes packets between networks to a specific IP address, but does NOT, for instance, combine packets into a longer message or have an acknowledgement that they got there)
- Most IP addresses (in theory) could be anywhere on the internet, but some are reserved for small networks to use themselves, so many different small networks might use 192.169.anything.anything for the computers on it, so long as they don't accidentally send messages for those IP address out onto the internet. There are also some special IP addresses not assigned to any computer but that mean "this computer" or "all computers on this network"
- Nowadays it's much more common for a home network to connect to the internet via a router, and the router (may) have a real internet IP address (though not normally the same one every day) which it uses to talk to the internet, but another, eg. 192.168.0.1 which it uses on the local network, and whenever it sends packets between the networks it switches the addresses around so they go out, and come back to the router, and then it switches them over to go to the local IP address.
- On a small internal network IP addresses are either assigned manually (by just picking 192.168.anything and making sure they're different) or by DHCP (which is much the same, except whenever a computer turns on, it asks the router for a new IP address that's no-one's using,and the router keeps a list and hands out the next free one)

TCP

- The contents of an IP packet are typically a TCP packet
- IP does the "get this packet to the right computer" but TCP does "send a reply to make sure it gets there, number all the packets I send so the other end can check they all arrive in the right order, and stitch together lots of small packets into one big message, number them so I can (eg) stream music and download a webpage at the same time, and the right messages go to the right program etc"
- There are some other protocols which are similar to TCP and use IP, but are different, eg. UDP which does a similar thing but WITHOUT all the checking.

HTTP, FTP, etc, etc

- OK so, TCP sends a potentially long message. What is a message? Many, many different protocols use TCP/IP, typically used by different applications on the same computer
- For HTTP it might be something like "Hey computer? Do you have a file called index.html? Please send me a file called index.html!" and a webserver running on that computer would send an HTTP reply saying "404. That means I don't have it." or "200. That means, that file follows. OK, here goes. [lots of html/txt/jpg/etc]"

Active Recent Entries