Hacker News new | past | comments | ask | show | jobs | submit login
Stanford CS 144: Introduction to Computer Networking (cs144.github.io)
344 points by charlysl on Dec 15, 2019 | hide | past | favorite | 28 comments



OP here. I think the best would be to do the labs in posted link, after watching the great video lectures (which have quizzes but are lacking labs) in the free online Stanford course: https://lagunita.stanford.edu/courses/Engineering/Networking...

AFAIK this combination would be the best free computer networking course out there, specially if combined with the MIT 6.033 systems engineering videos, to understand complex systems design concepts in a wider context, and how they were applied, in particular, to the internet and the ethernet.

Also, regarding ethernet, there is a realy good old presentation by Metcalfe in youtube: https://youtu.be/Fj7r3vYAjGY


On Ethernet, there are a couple of different folks that have successfully bit banged 10mbit Ethernet with an AVR. That would be a pretty good way to learn. Though 10mbit is Manchester encoded...nothing faster is. Also, watch out for POE. One example: http://www.pa3fwm.nl/projects/avreth/


Where is the link for the lecture videos?


Here is the youtube playlist if anyone is interested.

https://www.youtube.com/playlist?list=PLvFG2xYBrYAQCyz4Wx3NP...


Thanks for sharing my curated playlist


A good book to accompany this course is TCP/IP Protocol Suite 4th Ed. by Behrouz A. Forouzan which can be found online here: https://archive.org/details/TCPIPProtocolSuite4thEd.B.Forouz...


From this course's syllabus: The optional course textbook is: Kurose and Ross, Computer Networking: A Top Down Approach, 7th edition.


In general, I wish the Stanford CS lecture videos were available online to everyone.


There seem to be quite a few MOOCs available[1]. edX and coursera have content from big name universities, too

[1] https://online.stanford.edu/courses?keywords=computer+scienc...


Unfortunately MOOCs, including at this point even edX, have really been tightening up on what you have access to for free. By and large, you can still get the videos, at least while the class is running, but not a lot else.


for the real CS classes, you have to pay $6500. And then you don't get access to the videos after the class has completed.


I’d started one lab but lost track of them years ago and been looking. All I ever fou d was the Lagunita videos. Definitely will do these when I get time, thanks!


OP here, I was in the same situation. The only way I eventually managed to get the labs was by dirbusting this stanford course's url a few months ago (felt a bit bad about this but I was a bit desperate and it did the job, I managed to get the lab pdfs/htmls, zips and even the vm; I also found it a bit ironic that I managed to get network labs from a top university in such a fashion). But this link is the most up to date version, of course. And this time they put the labs in github, just great.


Anyone know how I can get a free Stanford account to watch their video?


I just signed up to the online course that OP linked to. I assume they're the same videos


oh cool. Thank. I got in. Really like this course.


I can't see a mention of IPv6 anywhere, and IPv4 is talked about as 'the' IP protocol.

Disappointing and frustrating.


Just use getaddrinfo and don’t make assumptions about what names/addresses look like.

Really, it’s CS so the ideas around building correct systems over a network are much more interesting than how to use a particular version of the sockets API (which just requires reading documentation.) Attitudes like that are how you end up only having electives like “how to build an app in framework x.” The whole point of the CS degree is to teach you to read/write documentation so by definition classes that read it for you are a waste of money and time and are the most frustrating.


But this course _does_ actually look at IP headers, checksumming, fragmentation, CIDR, discovery protocols and whatnot. Those are also important to understand in the context of IPv6.


The follow-up CS244 Advanced Networking doesn't appear to touch IPv6 either. I looked at the assignments and papers and didn't see anything. http://web.stanford.edu/class/cs244/


So they look at it like every ISP and OS does you mean?


My ISP (both the one I use _and_ the one I run) have IPv6. My OS uses IPv6. I don't understand what you mean.


Could somebody explain why this is news? I'm obviously missing the relevance


It's not, just something cool that OP found. This kind of stuff is posted here a lot, along with Wikipedia pages etc


Ok, thanks. I wasn't being snarky I was just curious


OP here, since you are curious, this is why I decided to post this: as someone else has remarked above, there is a fantastic Stanford free networking course in Lagunita. It is the real thing, full force undiluted highbrow not dumbed down, unlike so many other moocs. Except, frustratingly, unlike the real Stanford course, the challenging labs are missing, so people were missing that necessary balance between theory and practice. But now Stanford has made said labs publicly available, this term. Given that this is AFAIK the best free networking course out there, I thought HN readership might be interested to know that now it's even better (and, as it happens, it was).


Great. Thanks for the explanation. I'm not from the US so please forgive my ignorance as to CS 144's significance. That's all I was really asking - when I asked that question there was no accompanying commentary here.


No problem. Your remark made me realize that maybe I should have worked harder on the title. I am not from the US either, English is not my first language, but on top of having most of the best universities they also seem to be making great university courses available for free much more than anybody else.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: