SlideShare a Scribd company logo
IL:

                      oraccha
  Plan9           http://d.hatena.ne.jp/oraccha/

  2010    5   8                         VM
Ken Thompson

 Q UNIX



 A creat(2) ”e”

                  Ask a google engineer. Ken Thompson,
             http://www.google.com/moderator/#15/
                    e=7f3&t=7f3.44&f=7f3.5046
Ken Thompson
1.

2. Ethernet IP

3.

4.
IL: Internet Link
1.

2. Ethernet IP

3.

4.                       9P
                   TCP          IL
                         IP
                     Ethernet
IL: Internet Link
•   9P


•   TCP     UDP

    •
        •
        •
    •
rx(1):
•   Usage: rx machine command arg...
                plug
     % rx plug echo 1 2 3 | sed s/1/x/
     x23

     % echo 1 2 3 | rx plug sed s/1/x/



       cpu(1)
rx(1) over IL
•   rx                  close
    0          write                 EOF
         TCP       0         write

        % echo 1 2 3 | rx il!plug!17009 sed s/1/x/
        x23

        % echo 1 2 3 | rx il!plug!17009 sed s/1/x/ |
        sed s/2/y/
        xy3
TCP
•   TCP

•   shutdown(2)



•   rsh           EOF



•   Plan 9        ... orz
IL

•   TCP



•
    •
    •          ADSL
IL
•
    •   /n/sources/extra/il.c

    •            http://lufia.org/plan9/doc/inst/il.html

•   ndb/cs.c
          cpu% diff cs.c.orig cs.c
          164a165
          > 	

 { "il",	

 	

 iplookup,	

 iptrans,	

 },
                                                    1
•   TCP

•
    •      IL   SCTP DCCP

•         L4

    •
                     SCTP: Stream Control Transport Protocol
                     DCCP: Data Congestion Control Protocol
Ken Thompson

Q Plan 9



A          OS

                Ask a google engineer. Ken Thompson,
            http://www.google.com/moderator/#15/
                   e=7f3&t=7f3.44&f=7f3.5046
Tokyo Inferno/Plan9 Users
Group (TIP9UG)
          Plan9   http://d.hatena.ne.jp/oraccha/
IL/IP
0                                                                          31

             Header
Version      length          TOS                          Length
                Identifier                0 DF MF         Fragment offset
       TTL                  Protocol                Header checksum
                                Source IP address
                              Destination IP address
              IL checksum                              Packet length
    Packet type             Special                    Source port
           Destination port                            Sequence id
          Sequence id (cont.)                       Acked sequence
       Acked sequence (cont.)                                -
Syncer




Closed        Established




         Syncee


                            Closing
write(2)            read(2)

  ip/devip.c              ipwrite             ipread


                   wq                  rq


    ip/il.c                ilkick             iliput

    ip/ip.c              ipoput4             ipiput4

ip/ethermedium.c        etherbwrite         etherread4
                         etherbwrite
pc/devether.c              etheroq
                                       in

                   oq
                                             etheriq

pc/etherxxxx.c           transmit            interrupt

More Related Content

IL: 失われたプロトコル

  • 1. IL: oraccha Plan9 http://d.hatena.ne.jp/oraccha/ 2010 5 8 VM
  • 2. Ken Thompson Q UNIX A creat(2) ”e” Ask a google engineer. Ken Thompson, http://www.google.com/moderator/#15/ e=7f3&t=7f3.44&f=7f3.5046
  • 4. IL: Internet Link 1. 2. Ethernet IP 3. 4. 9P TCP IL IP Ethernet
  • 5. IL: Internet Link • 9P • TCP UDP • • • •
  • 6. rx(1): • Usage: rx machine command arg... plug % rx plug echo 1 2 3 | sed s/1/x/ x23 % echo 1 2 3 | rx plug sed s/1/x/ cpu(1)
  • 7. rx(1) over IL • rx close 0 write EOF TCP 0 write % echo 1 2 3 | rx il!plug!17009 sed s/1/x/ x23 % echo 1 2 3 | rx il!plug!17009 sed s/1/x/ | sed s/2/y/ xy3
  • 8. TCP • TCP • shutdown(2) • rsh EOF • Plan 9 ... orz
  • 9. IL • TCP • • • ADSL
  • 10. IL • • /n/sources/extra/il.c • http://lufia.org/plan9/doc/inst/il.html • ndb/cs.c cpu% diff cs.c.orig cs.c 164a165 > { "il", iplookup, iptrans, }, 1
  • 11. TCP • • IL SCTP DCCP • L4 • SCTP: Stream Control Transport Protocol DCCP: Data Congestion Control Protocol
  • 12. Ken Thompson Q Plan 9 A OS Ask a google engineer. Ken Thompson, http://www.google.com/moderator/#15/ e=7f3&t=7f3.44&f=7f3.5046
  • 13. Tokyo Inferno/Plan9 Users Group (TIP9UG) Plan9 http://d.hatena.ne.jp/oraccha/
  • 14. IL/IP 0 31 Header Version length TOS Length Identifier 0 DF MF Fragment offset TTL Protocol Header checksum Source IP address Destination IP address IL checksum Packet length Packet type Special Source port Destination port Sequence id Sequence id (cont.) Acked sequence Acked sequence (cont.) -
  • 15. Syncer Closed Established Syncee Closing
  • 16. write(2) read(2) ip/devip.c ipwrite ipread wq rq ip/il.c ilkick iliput ip/ip.c ipoput4 ipiput4 ip/ethermedium.c etherbwrite etherread4 etherbwrite pc/devether.c etheroq in oq etheriq pc/etherxxxx.c transmit interrupt