nstonam.awk
上传用户:rrhhcc
上传日期:2015-12-11
资源大小:54129k
文件大小:1k
源码类别:

通讯编程

开发平台:

Visual C++

  1. #!/usr/bin/awk
  2. #
  3. # nam fmt:
  4. # eventCode time src dst size attr type conv id
  5. #
  6. # ns fmt:
  7. # eventCode time src dst pktType size flags class src.sport dst.dport
  8. # seqno uid
  9. #
  10. $2 ~ /testName/ {
  11.   next;
  12. }
  13. $1 ~ /v/ {
  14.   print $0;
  15.   next;
  16. }
  17. $1 ~ /[dh+-]/ {
  18. print $1, $2, $3, $4, $6, $8, $5, $8, $12
  19. if ($1 == "h") {
  20. group = int($10) % 256;
  21. if ($3 < $4)
  22. key = $3 $4;
  23. else
  24. key = $4 $3;
  25. if (subscription[key] < group) {
  26. subscription[key] = group;
  27. print "v " $2 " $theNet ecolor " $3 " " $4 " $colorMap(" group ")"
  28. print "v " $2 " $theNet ecolor " $4 " " $3 " $colorMap(" group ")"
  29. }
  30. }
  31. if ($5 == "prune") {
  32. group = int($10) % 256;
  33. if ($3 < $4)
  34. key = $3 $4;
  35. else
  36. key = $4 $3;
  37. if (subscription[key] == group) {
  38. group -= 1;
  39. subscription[key] = group;
  40. print "v " $2 " $theNet ecolor " $3 " " $4 " $colorMap(" group ")"
  41. print "v " $2 " $theNet ecolor " $4 " " $3 " $colorMap(" group ")"
  42. }
  43. }
  44. #
  45. # print a hop event for each deque
  46. # (ns-2 doesn't dump hop events by default since
  47. # we can infer them from the "-" event)
  48. #
  49. if ($1 == "-")
  50. print "h", $2, $3, $4, $6, $8, $5, $8, $12
  51. }