implement send & recv edge, except timer & checksum